API Reference
Auto-generated from source docstrings. All public classes and functions follow Google-style docstrings.
Core parsing modules
| Module | Contents |
|---|---|
| BitReader | Low-level bit/byte/varint reader |
| DemoStream | Outer message stream iterator |
| Send Tables | Serializer tree — parse_send_tables, Serializer, Field |
| Field Decoders | Type → decoder dispatch, QuantizedFloatDecoder |
| Field Paths | Huffman field path decoder, FieldPath |
| String Tables | Table creation, updates, key-history decoder |
| Entities | Entity lifecycle, EntityOp, typed field accessors |
| Game Events | Game event schema registration and typed dispatch |
| Combat Log | Combat log entry decoding and dispatch |
| ReplayParser | Top-level parse driver — wires all subsystems |
Output and extraction
| Module | Contents |
|---|---|
| Models | ParsedMatch, ParsedPlayer, output dataclasses |
| Constants | hero_display(), item_display(), name lookups |
| Analysis Helpers | position_at_tick, group_ability_hits, teamfight_at_tick, heroes_near, ability_level_at_tick |
| Match Builder | Assembles extractor output into ParsedMatch |
| Combat Aggregator | Per-player combat stat aggregation |
| DataFrames | parse_to_dataframe(), to_parquet(), to_json(), to_dict() — export to pandas, Parquet, or JSON |
| Batch | parse_many(), parse_many_to_dataframe(), parse_many_to_parquet() — parallel multi-replay processing |
Extractors
| Module | Contents |
|---|---|
| Overview | How extractors attach to the parser |
| Players | Hero/player snapshots, time series, runes |
| Objectives | Towers, barracks, Roshan |
| Wards | Ward placements with coordinates |
| Courier | Courier state per tick |
| Draft | Pick and ban events |
| Teamfights | Teamfight window detection |