awesome-repositories.com
Blog
MCP
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetServeur MCPÀ proposNotre méthodologiePresse
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
whitequark avatar

whitequark/parser

0
View on GitHub↗
1,642 stars·204 forks·Yacc·8 vues

Parser

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 are instantiated and structured. Additionally, the library includes diagnostics and error reporting utilities that collect and display syntax warnings and parsing errors encountered during source analysis.

Features

  • Ruby Source Code Parsers - Converts Ruby source code into an abstract syntax tree representation to analyze and inspect code structure.
  • Ruby Source Code Analysis - Parses Ruby source code into abstract syntax trees to inspect, transform, or analyze underlying code structures.
  • Ruby Source Code Parsers - Transforms Ruby source code into abstract syntax trees with exact location tracking and diagnostic reporting.
  • Source Coordinate Tracking - Tracks exact source file coordinates and character ranges for nodes within the generated syntax tree.
  • Abstract Syntax Tree Generators - Converts raw source code into structured tree representations that expose underlying grammar for analysis.
  • Immutable Nodes - Constructs abstract syntax tree nodes as frozen, immutable objects that eliminate concurrency risks.
  • Runtime-Specific Code Parsing - Transforms source code into abstract syntax trees using the exact language version of the interpreter currently executing.
  • Version-Specific Code Parsing - Transforms source code into abstract syntax trees by selecting the appropriate implementation for a specific target language version.
  • Syntax Diagnostics Collection - Gathers syntax warnings and parsing errors during the analysis of source code input.
  • Source Code Diagnostics Collectors - Gathers and outputs syntax warnings and parsing errors encountered during code analysis.
  • Language Version Dispatch Mechanisms - Dynamically selects specific grammar and tokeniser implementations at runtime to support multiple distinct language specification versions.
  • Custom Builders - Allows supplying custom builder objects to control how abstract syntax tree nodes are instantiated and structured.
  • Parser Diagnostics Reporting - Collects and displays error messages and warnings encountered during the parsing process to identify syntax issues.
  • Source Code - Collects and reports syntax errors and warnings from source files to identify code issues early.

Historique des stars

Graphique de l'historique des stars pour whitequark/parserGraphique de l'historique des stars pour whitequark/parser

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Alternatives open source à Parser

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Parser.
  • syntax-tree/mdastAvatar de syntax-tree

    syntax-tree/mdast

    1,441Voir sur GitHub↗

    The project provides a standardized abstract syntax tree specification and utility library for parsing, transforming, and serializing markdown documents. It serves as a comprehensive document processing architecture that translates between raw text markup and structured node representations in both directions. The capability surface covers syntax parsing for extended markdown features, custom syntax extensions, metadata blocks, and embedded expressions, alongside document serialization that converts syntax trees back into standard and extended markup formats. It includes node modeling and val

    astmarkdownsyntax-tree
    Voir sur GitHub↗1,441
  • microsoft/tsdocAvatar de microsoft

    microsoft/tsdoc

    4,954Voir sur GitHub↗

    TSDoc is a documentation standard and specification for writing structured comments in TypeScript code. It provides a portable system for defining metadata, tags, and cross-references within source code to ensure consistent parsing and rendering across different tooling. The project includes a doc comment parser that converts comments into a structured syntax tree and a validator that enforces syntax consistency. It allows for the definition of custom documentation tags through external configuration files and supports multiple syntax validation modes to assist with specification compliance.

    TypeScriptcommentsdoc-commentsdocumentation
    Voir sur GitHub↗4,954
  • lark-parser/larkAvatar de lark-parser

    lark-parser/lark

    5,914Voir sur GitHub↗

    Lark is a Python parsing toolkit used to define grammars and convert raw text into annotated parse trees. It serves as an abstract syntax tree generator and a grammar definition language for specifying language rules through terminals and regular expressions. The library provides two primary parsing implementations: an Earley parsing library capable of handling all context-free languages, including those with ambiguity and left-recursion, and a high-performance LALR parsing library designed for deterministic languages with low memory overhead. Beyond core parsing, the toolkit includes capabi

    Pythoncykearleygrammar
    Voir sur GitHub↗5,914
  • sass/dart-sassAvatar de sass

    sass/dart-sass

    4,195Voir sur GitHub↗

    This project is a CSS stylesheet compiler that transforms Sass source code into standard CSS. It provides the primary mechanism for converting styles while implementing syntax rules for web browsers and applications. The compiler supports a module-based dependency system that uses dedicated namespaces to provide encapsulation and prevent global scope collisions. It includes specialized engines for multi-model color conversion and advanced mathematical calculations, including trigonometry and logarithms. Capabilities cover a broad range of build and analysis tools, including the generation of

    Dart
    Voir sur GitHub↗4,195
Voir les 5 alternatives à Parser→

Questions fréquentes

Que fait whitequark/parser ?

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.

Quelles sont les fonctionnalités principales de whitequark/parser ?

Les fonctionnalités principales de whitequark/parser sont : Ruby Source Code Parsers, Ruby Source Code Analysis, Source Coordinate Tracking, Abstract Syntax Tree Generators, Immutable Nodes, Runtime-Specific Code Parsing, Version-Specific Code Parsing, Syntax Diagnostics Collection.

Quelles sont les alternatives open-source à whitequark/parser ?

Les alternatives open-source à whitequark/parser incluent : syntax-tree/mdast — The project provides a standardized abstract syntax tree specification and utility library for parsing, transforming,… microsoft/tsdoc — TSDoc is a documentation standard and specification for writing structured comments in TypeScript code. It provides a… lark-parser/lark — Lark is a Python parsing toolkit used to define grammars and convert raw text into annotated parse trees. It serves as… sass/dart-sass — This project is a CSS stylesheet compiler that transforms Sass source code into standard CSS. It provides the primary… jeremyfa/yaml.js — This library provides a parser and encoder for YAML 1.2 data structures, enabling the transformation of human-readable…

Collections incluant Parser

Sélections manuelles où Parser apparaît.
  • Language definition files
  • un langage de programmation pour créer des applications web