We have collection of more than 1 Million open source products ranging from Enterprise product to
small libraries in all platforms. We aggregate information from all open source repositories.
Search and find the best for your needs. Check out projects section.
This is an early-stage PHP parser designed, from the beginning, for IDE usage scenarios (see Design Goals for more details). There is still a ton of work to be done, so at this point, this repo mostly serves as an experiment and the start of a conversation.After you've configured your machine, you can use the parser to generate and work with the Abstract Syntax Tree (AST) via a friendly API.
The parser streams its result into a json handler. The handler gets events from the parser and can act accordingly. It allows for memory-efficient processing of large data sets.The core parser is not tied to a particular JSON AST (abstract syntax tree). Through the streaming interface, any AST can be built. The parser currently ships with a spray-json builder, more will follow.
This program makes it possible to read a file produced by the option quot;-fdump-tree-originalquot; which replaces the old quot;-fdump-ast-lt;Igt;switchlt;/igt;quot;. The goal is to automatically annotate C code for SPLint (actually we focus on possibly null pointer)
ebnf2yacc is a tool to help write yacc parsers/compilers. It takes as input a grammar written in bnf (ebnf support is planned), and outputs a c++ abstract syntax tree that supports the visitor pattern, along with a yacc parser that builds the tree.
Front provides a compiler front end generator that can generate a parser, pretty printer, symbol table handling, and Abstract Syntax Tree data structures and traversals. It also provides a C preprocessor library, and an AST rewriter generator.
CNCC is a customizable naming conventions checker for C++. In using the Clang frontend CNCC works directly on the language's abstract syntax tree (AST). This is quite similar to what clang-format does but way more simple and for naming conventions only.