A grammar describes the syntax of a programming language, and might be defined in Backus-Naur form (BNF). A lexer performs lexical analysis, turning text into tokens. A parser takes tokens and builds a data structure like an abstract syntax tree (AST). The parser is concerned with context: does the sequence of tokens fit the grammar? A compiler is a combined lexer and parser, built for a specific grammar.
Minimalist Function Decorators for Elixir
AST-aware code search and rewrite for the pi coding agent. Faithful port of the ast-grep tools from oh-my-openagent.
Codebase intelligence platform — parse 27 languages, build dependency/call graphs, trace impact, run 20 architecture detectors, enforce framework conv...
My attempt at a JavaScript engine
Static auditor for randomness and nonce hygiene in Python source - flags weak PRNGs, hardcoded keys, reused counters, static IVs, short salts. CWE-330...
Static auditor for randomness and nonce hygiene in Python source - six rules for seeds, nonces, salts and weak hashes, each finding with a written rat...
Lexers, tokenizers, parsers, compilers, renderers, stringifiers... What's the difference, and how do they work?
Framework for writing codemods
In the dynamic execution of JS language environment (wechat applet) to execute JS class calling function.
Go Components
JSDoc Abstract Syntax Tree
AST2DB is a powerful tool that utilizes clang to parse C/C++ source code, extract Abstract Syntax Tree (AST) information, and store it in an SQLite da...
See inside JavaScript as it thinks instruction-level visualizer for the call stack, heap memory and event loop in real time.
Monorepo for a suite of `unified`-compatible converters for converting between, from, and to .docx, JATS XML, LaTeX, and PDF
Review the Python you changed, not the Python you inherited. Git-aware AST code review that runs in the seconds before git push.
Transform html with helpers for manipulating an AST
Utilities for the snapdragon parser/compiler.
Static flow analyzer for PHP applications — trace routes through messages, services, database effects and external HTTP calls without running the app.
AST Transpiler that converts Typescript into different languages (PHP, Python, C# (wip))
Lua AST toolkit for formatting, deobfuscating*, and tweaking code, in pure lua.
A dynamic, interpreted, scripting language written in Java.
JSON typeclasses that know the difference between null and absent fields
Syntax tree visualizer for tree-sitter
this is a yacc (goyacc) oracle sql parser.
Goldmark extension that renders and formats markdown files
SoliDiffy: AST-Based Code Differencing Tool for Solidity Smart Contracts
Next-gen PHPDoc parser with support for intersection types and generics(TypeScript version)
🤖 World's first AST-powered AI development agent | Autonomous Django/Flask builder | Zero-token intelligence | Military-grade sandbox | Made in India...
TypeScript AST transformer to resolve type aliases into fully formed interfaces
CLI Tool to extract an Interface from a Golang struct using AST
Automagically insert Open Telemetry spans in your codebase.
yet another fast json.
Shorten (mangle) names in JavaScript code
ECMAScript Expressions parser and static eval
Package astcopy implements Go AST deep copy operations.
golang AST matcher
Automagically converts discord.py async-branch code to rewrite-branch code.
Implementation of Red / Green syntax trees. Inspired by Rowan
Parser for edge template engine
A basic .NET Library for parsing wikitext into AST.
Headwind parses Tailwind utility classes from JSX/TSX/HTML source code, replaces them with generated semantic class names, and outputs corresponding C...
Do some fun with AST, using JavaScript.
Rust library to scan files and expand (make modules inline) multi-file crates source code as a single tree.
Zith is a new system programming languages focused on expressiveness & readability
☯️ Ruby implementation of the StructuredMerge contract
Toolkit for running codemods over multiple Kotlin files inspired by jscodeshift.
Toolchain for generating JSON definitions of Apple APIs
Parse markdown string to Abstract Syntax Tree which we defined.
[DEPRECATED] Use following package instead
根据Golang定义的接口生成proto文件