4 repository-uri
Recording line and column offsets for tokens to map parse tree elements back to original source code.
Distinguishing note: Shortlist candidates focus on user input playback or ML encodings; none cover source-code coordinate tracking for parsers.
Explore 4 awesome GitHub repositories matching programming languages & runtimes · Source Coordinate Tracking. Refine with filters or upvote what's useful.
Lark este un toolkit de parsare Python utilizat pentru a defini gramatici și a converti textul brut în arbori de parsare adnotați. Servește drept generator de arbori de sintaxă abstractă și un limbaj de definire a gramaticii pentru specificarea regulilor limbajului prin terminale și expresii regulate. Biblioteca oferă două implementări principale de parsare: o bibliotecă de parsare Earley capabilă să gestioneze toate limbajele context-free, inclusiv cele cu ambiguitate și recursivitate la stânga, și o bibliotecă de parsare LALR de înaltă performanță concepută pentru limbaje deterministe cu un consum redus de memorie. Dincolo de parsarea de bază, toolkit-ul include capabilități pentru compoziția gramaticală modulară, transformarea arborilor bazată pe reguli și urmărirea coordonatelor pentru pozițiile sursă. De asemenea, suportă serializarea gramaticilor LALR în module de parsare independente.
Provides line and column offset tracking for tokens to map parse tree nodes back to the original source code.
TSDoc este un standard de documentație și o specificație pentru scrierea comentariilor structurate în codul TypeScript. Oferă un sistem portabil pentru definirea metadatelor, etichetelor și referințelor încrucișate în interiorul codului sursă pentru a asigura parsarea și randarea consistentă în diferite instrumente. Proiectul include un parser de comentarii doc care convertește comentariile într-un arbore de sintaxă structurat și un validator care impune consistența sintaxei. Permite definirea de etichete de documentație personalizate prin fișiere de configurare externe și suportă moduri multiple de validare a sintaxei pentru a asista la conformitatea cu specificațiile. Specificația acoperă o gamă largă de nevoi de documentare API, inclusiv marcarea etapelor de lansare, stabilitatea și deprecierea. Suportă detalierea parametrilor funcțiilor, valorilor returnate și tipurilor de excepții, precum și gestionarea vizibilității interne, moștenirii și referințelor încrucișate între declarații.
Records line and column offsets for tokens to map parse tree elements back to original source code for precise error reporting.
Acest proiect este un compilator de fișiere CSS care transformă codul sursă Sass în CSS standard. Acesta oferă mecanismul principal pentru conversia stilurilor, implementând în același timp reguli de sintaxă pentru browserele web și aplicații. Compilatorul suportă un sistem de dependențe bazat pe module care utilizează spații de nume dedicate pentru a oferi încapsulare și a preveni coliziunile de domeniu global. Include motoare specializate pentru conversia culorilor multi-model și calcule matematice avansate, inclusiv trigonometrie și logaritmi. Capabilitățile acoperă o gamă largă de instrumente de build și analiză, inclusiv generarea de source maps, monitorizarea sistemului de fișiere pentru recompilare automată și capacitatea de a executa compilarea direct în browser. De asemenea, permite extensibilitatea prin funcții personalizate și importatoare definite într-o limbă gazdă printr-un protocol de mesagerie structurat. Utilizatorii pot efectua, de asemenea, analize statice prin inspectarea arborelui sintactic abstract (AST) pentru a analiza structura codului și a rezolva dependențele fără a efectua o compilare completă.
Records line and column offsets for tokens to accurately map compiled output back to original source code.
Parser is a Ruby source code parser that converts raw source text into structured abstract syntax trees for static analysis and code manipulation. It features dynamic dispatch mechanisms that select specific grammar and tokeniser implementations at runtime, supporting both the executing interpreter version and explicitly targeted language specification versions. The library constructs abstract syntax tree nodes as frozen, immutable objects while tracking exact source file coordinates and character ranges for each node. Developers can supply custom builder objects to control how tree nodes ar
Tracks exact source file coordinates and character ranges for nodes within the generated syntax tree.