Files

27 lines
735 B
Python
Raw Permalink Normal View History

2026-04-26 00:51:40 +08:00
from collections.abc import Generator, Iterable
from numbers import Integral
from typing import Any
class Tokenizer:
"""
Splits a MIDI byte stream into messages.
"""
def __init__(self, data: Iterable[int] | None = ...) -> None:
"""Create a new decoder."""
def feed_byte(self, byte: int | Integral) -> None:
"""Feed MIDI byte to the decoder.
Takes an int in range [0..255].
"""
def feed(self, data: Iterable[int]) -> None:
"""Feed MIDI bytes to the decoder.
Takes an iterable of ints in in range [0..255].
"""
def __len__(self) -> int: ...
def __iter__(self) -> Generator[Any, Any]:
"""Yield messages that have been parsed so far."""