├── .gitignore ├── LICENSE.md ├── Makefile ├── README.md ├── composer.json ├── docs ├── 01-about.md ├── 02-language_design.md ├── _config.yml └── index.md ├── examples ├── 00-basic-usage │ ├── Prerano::Examples::BasicUsage.cfg │ ├── Prerano::Examples::BasicUsage.php │ ├── Prerano::Examples::BasicUsage.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 01-public-functions │ ├── Prerano::Examples::PublicFunctions.cfg │ ├── Prerano::Examples::PublicFunctions.php │ ├── Prerano::Examples::PublicFunctions.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 02-calling-php-functions │ ├── Prerano::Examples::CallingPHPFunctions.cfg │ ├── Prerano::Examples::CallingPHPFunctions.php │ ├── Prerano::Examples::CallingPHPFunctions.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 03-defining-types │ ├── Prerano::Examples::DefiningTypes.cfg │ ├── Prerano::Examples::DefiningTypes.php │ ├── Prerano::Examples::DefiningTypes.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 04-guards │ ├── Prerano::Examples::PublicFunctions.cfg │ ├── Prerano::Examples::PublicFunctions.php │ ├── Prerano::Examples::PublicFunctions.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 05-type-checks │ ├── Prerano::Examples::TypeChecks.cfg │ ├── Prerano::Examples::TypeChecks.php │ ├── Prerano::Examples::TypeChecks.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 06-matching │ ├── Prerano::Examples::Matching.cfg │ ├── Prerano::Examples::Matching.php │ ├── Prerano::Examples::Matching.png │ ├── code.pr │ ├── code.pr.ast │ └── code.pr.processed.ast ├── 07-expression-functions │ ├── Prerano::Examples::ExpressionFunctions.cfg │ ├── Prerano::Examples::ExpressionFunctions.php │ ├── Prerano::Examples::ExpressionFunctions.png │ ├── __main__.pr │ ├── __main__.pr.ast │ ├── __main__.pr.processed.ast │ ├── types.pr │ ├── types.pr.ast │ └── types.pr.processed.ast ├── 08-arrays │ ├── Prerano::Examples::Arrays.cfg │ ├── Prerano::Examples::Arrays.php │ ├── Prerano::Examples::Arrays.png │ ├── array.pr │ ├── array.pr.ast │ └── array.pr.processed.ast ├── 09-pipe-operator │ ├── Prerano::Examples::PipeOperator.cfg │ ├── Prerano::Examples::PipeOperator.php │ ├── Prerano::Examples::PipeOperator.png │ ├── pipe.pr │ ├── pipe.pr.ast │ └── pipe.pr.processed.ast ├── README.md └── rebuild.php ├── grammar ├── .gitignore ├── language.y ├── parser.template.php ├── rebuildParser.php └── tokens.template.php ├── lib ├── AST │ ├── Node.php │ ├── Node │ │ ├── Arg.php │ │ ├── Expr.php │ │ ├── Expr │ │ │ ├── Array_.php │ │ │ ├── Assign.php │ │ │ ├── BinaryOp.php │ │ │ ├── BinaryOp │ │ │ │ ├── BooleanOr.php │ │ │ │ ├── Div.php │ │ │ │ ├── Equals.php │ │ │ │ ├── Minus.php │ │ │ │ ├── Mod.php │ │ │ │ ├── Mul.php │ │ │ │ └── Plus.php │ │ │ ├── FuncCall.php │ │ │ ├── IdentifierReference.php │ │ │ ├── Is.php │ │ │ ├── Match.php │ │ │ ├── MatchEntry.php │ │ │ ├── MethodCall.php │ │ │ ├── Pipe.php │ │ │ ├── PointerDereference.php │ │ │ ├── Type.php │ │ │ ├── Type │ │ │ │ ├── Function_.php │ │ │ │ ├── Intersection.php │ │ │ │ ├── Named.php │ │ │ │ ├── Pointer.php │ │ │ │ ├── Specification.php │ │ │ │ ├── Union.php │ │ │ │ └── Value.php │ │ │ └── Variable.php │ │ ├── Name.php │ │ ├── Name │ │ │ └── Qualified.php │ │ ├── Scalar.php │ │ ├── Scalar │ │ │ └── LNumber.php │ │ ├── Stmt.php │ │ └── Stmt │ │ │ ├── Alias.php │ │ │ ├── Class_.php │ │ │ ├── Enum.php │ │ │ ├── ExprFunction.php │ │ │ ├── Function_.php │ │ │ ├── Import.php │ │ │ ├── Match │ │ │ └── Entry.php │ │ │ ├── Package.php │ │ │ ├── Parameter.php │ │ │ └── Type.php │ ├── NodeAbstract.php │ ├── Traverser.php │ ├── Visitor.php │ ├── Visitor │ │ ├── AliasResolver.php │ │ └── TypeQualifier.php │ └── VisitorAbstract.php ├── CFG │ ├── Generator.php │ ├── Node.php │ ├── Node │ │ ├── Expr.php │ │ └── Expr │ │ │ ├── Assign.php │ │ │ ├── BinaryOp.php │ │ │ ├── BinaryOp │ │ │ ├── Div.php │ │ │ ├── Equals.php │ │ │ ├── Minus.php │ │ │ ├── Mod.php │ │ │ ├── Mul.php │ │ │ └── Plus.php │ │ │ ├── ExpressionCall.php │ │ │ ├── FuncCall.php │ │ │ ├── If_.php │ │ │ ├── Is.php │ │ │ ├── MethodCall.php │ │ │ └── PointerDereference.php │ ├── NodeAbstract.php │ └── Package.php ├── Compiler.php ├── Compiler │ ├── Compiler.php │ ├── PHP.php │ ├── PHP │ │ ├── Code.php │ │ ├── Metadata.php │ │ ├── PHP.php │ │ ├── PublicFunctions.php │ │ ├── PublicValueConstants.php │ │ ├── Scope.php │ │ └── TypeCheck.php │ └── Utility │ │ └── PhiResolver.php ├── Debug │ ├── ASTDumper.php │ ├── CFGDumper.php │ └── CFGGrapher.php ├── Inference │ ├── Engine.php │ ├── Rule.php │ ├── Rule │ │ ├── ExpressionFunctionResolver.php │ │ ├── FunctionCallResolver.php │ │ ├── TypeReconstruction.php │ │ └── TypeResolver.php │ └── RuleAbstract.php ├── Language │ ├── Block.php │ ├── Block │ │ └── Simple.php │ ├── BlockAbstract.php │ ├── Function_.php │ ├── Package.php │ ├── Type.php │ ├── TypeTest.php │ ├── Variable.php │ ├── Variable │ │ ├── Array_.php │ │ ├── IdentifierReference.php │ │ ├── Literal.php │ │ ├── Named.php │ │ ├── Parameter.php │ │ ├── Phi.php │ │ ├── Phi │ │ │ └── Entry.php │ │ └── Temp.php │ └── VariableAbstract.php ├── Parser │ ├── Error.php │ ├── Lexer.php │ ├── Parser.php │ ├── ParserAbstract.php │ └── Tokens.php ├── Scope.php └── php │ ├── arrays.pr │ ├── numbers.pr │ └── strings.pr └── phpunit.xml.dist /.gitignore: -------------------------------------------------------------------------------- 1 | composer.lock 2 | vendor 3 | .php_cs.cache -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/LICENSE.md -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/README.md -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/composer.json -------------------------------------------------------------------------------- /docs/01-about.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/docs/01-about.md -------------------------------------------------------------------------------- /docs/02-language_design.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/docs/02-language_design.md -------------------------------------------------------------------------------- /docs/_config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/docs/_config.yml -------------------------------------------------------------------------------- /docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/docs/index.md -------------------------------------------------------------------------------- /examples/00-basic-usage/Prerano::Examples::BasicUsage.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/00-basic-usage/Prerano::Examples::BasicUsage.cfg -------------------------------------------------------------------------------- /examples/00-basic-usage/Prerano::Examples::BasicUsage.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/00-basic-usage/Prerano::Examples::BasicUsage.php -------------------------------------------------------------------------------- /examples/00-basic-usage/Prerano::Examples::BasicUsage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/00-basic-usage/Prerano::Examples::BasicUsage.png -------------------------------------------------------------------------------- /examples/00-basic-usage/code.pr: -------------------------------------------------------------------------------- 1 | package Prerano::Examples::BasicUsage; 2 | 3 | fn __main__() none { 4 | } 5 | -------------------------------------------------------------------------------- /examples/00-basic-usage/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/00-basic-usage/code.pr.ast -------------------------------------------------------------------------------- /examples/00-basic-usage/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/00-basic-usage/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/01-public-functions/Prerano::Examples::PublicFunctions.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/01-public-functions/Prerano::Examples::PublicFunctions.cfg -------------------------------------------------------------------------------- /examples/01-public-functions/Prerano::Examples::PublicFunctions.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/01-public-functions/Prerano::Examples::PublicFunctions.php -------------------------------------------------------------------------------- /examples/01-public-functions/Prerano::Examples::PublicFunctions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/01-public-functions/Prerano::Examples::PublicFunctions.png -------------------------------------------------------------------------------- /examples/01-public-functions/code.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/01-public-functions/code.pr -------------------------------------------------------------------------------- /examples/01-public-functions/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/01-public-functions/code.pr.ast -------------------------------------------------------------------------------- /examples/01-public-functions/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/01-public-functions/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/02-calling-php-functions/Prerano::Examples::CallingPHPFunctions.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/02-calling-php-functions/Prerano::Examples::CallingPHPFunctions.cfg -------------------------------------------------------------------------------- /examples/02-calling-php-functions/Prerano::Examples::CallingPHPFunctions.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/02-calling-php-functions/Prerano::Examples::CallingPHPFunctions.php -------------------------------------------------------------------------------- /examples/02-calling-php-functions/Prerano::Examples::CallingPHPFunctions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/02-calling-php-functions/Prerano::Examples::CallingPHPFunctions.png -------------------------------------------------------------------------------- /examples/02-calling-php-functions/code.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/02-calling-php-functions/code.pr -------------------------------------------------------------------------------- /examples/02-calling-php-functions/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/02-calling-php-functions/code.pr.ast -------------------------------------------------------------------------------- /examples/02-calling-php-functions/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/02-calling-php-functions/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/03-defining-types/Prerano::Examples::DefiningTypes.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/03-defining-types/Prerano::Examples::DefiningTypes.cfg -------------------------------------------------------------------------------- /examples/03-defining-types/Prerano::Examples::DefiningTypes.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/03-defining-types/Prerano::Examples::DefiningTypes.php -------------------------------------------------------------------------------- /examples/03-defining-types/Prerano::Examples::DefiningTypes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/03-defining-types/Prerano::Examples::DefiningTypes.png -------------------------------------------------------------------------------- /examples/03-defining-types/code.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/03-defining-types/code.pr -------------------------------------------------------------------------------- /examples/03-defining-types/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/03-defining-types/code.pr.ast -------------------------------------------------------------------------------- /examples/03-defining-types/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/03-defining-types/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/04-guards/Prerano::Examples::PublicFunctions.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/04-guards/Prerano::Examples::PublicFunctions.cfg -------------------------------------------------------------------------------- /examples/04-guards/Prerano::Examples::PublicFunctions.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/04-guards/Prerano::Examples::PublicFunctions.php -------------------------------------------------------------------------------- /examples/04-guards/Prerano::Examples::PublicFunctions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/04-guards/Prerano::Examples::PublicFunctions.png -------------------------------------------------------------------------------- /examples/04-guards/code.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/04-guards/code.pr -------------------------------------------------------------------------------- /examples/04-guards/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/04-guards/code.pr.ast -------------------------------------------------------------------------------- /examples/04-guards/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/04-guards/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/05-type-checks/Prerano::Examples::TypeChecks.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/05-type-checks/Prerano::Examples::TypeChecks.cfg -------------------------------------------------------------------------------- /examples/05-type-checks/Prerano::Examples::TypeChecks.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/05-type-checks/Prerano::Examples::TypeChecks.php -------------------------------------------------------------------------------- /examples/05-type-checks/Prerano::Examples::TypeChecks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/05-type-checks/Prerano::Examples::TypeChecks.png -------------------------------------------------------------------------------- /examples/05-type-checks/code.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/05-type-checks/code.pr -------------------------------------------------------------------------------- /examples/05-type-checks/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/05-type-checks/code.pr.ast -------------------------------------------------------------------------------- /examples/05-type-checks/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/05-type-checks/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/06-matching/Prerano::Examples::Matching.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/06-matching/Prerano::Examples::Matching.cfg -------------------------------------------------------------------------------- /examples/06-matching/Prerano::Examples::Matching.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/06-matching/Prerano::Examples::Matching.php -------------------------------------------------------------------------------- /examples/06-matching/Prerano::Examples::Matching.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/06-matching/Prerano::Examples::Matching.png -------------------------------------------------------------------------------- /examples/06-matching/code.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/06-matching/code.pr -------------------------------------------------------------------------------- /examples/06-matching/code.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/06-matching/code.pr.ast -------------------------------------------------------------------------------- /examples/06-matching/code.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/06-matching/code.pr.processed.ast -------------------------------------------------------------------------------- /examples/07-expression-functions/Prerano::Examples::ExpressionFunctions.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/Prerano::Examples::ExpressionFunctions.cfg -------------------------------------------------------------------------------- /examples/07-expression-functions/Prerano::Examples::ExpressionFunctions.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/Prerano::Examples::ExpressionFunctions.php -------------------------------------------------------------------------------- /examples/07-expression-functions/Prerano::Examples::ExpressionFunctions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/Prerano::Examples::ExpressionFunctions.png -------------------------------------------------------------------------------- /examples/07-expression-functions/__main__.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/__main__.pr -------------------------------------------------------------------------------- /examples/07-expression-functions/__main__.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/__main__.pr.ast -------------------------------------------------------------------------------- /examples/07-expression-functions/__main__.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/__main__.pr.processed.ast -------------------------------------------------------------------------------- /examples/07-expression-functions/types.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/types.pr -------------------------------------------------------------------------------- /examples/07-expression-functions/types.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/types.pr.ast -------------------------------------------------------------------------------- /examples/07-expression-functions/types.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/07-expression-functions/types.pr.processed.ast -------------------------------------------------------------------------------- /examples/08-arrays/Prerano::Examples::Arrays.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/08-arrays/Prerano::Examples::Arrays.cfg -------------------------------------------------------------------------------- /examples/08-arrays/Prerano::Examples::Arrays.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/08-arrays/Prerano::Examples::Arrays.php -------------------------------------------------------------------------------- /examples/08-arrays/Prerano::Examples::Arrays.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/08-arrays/Prerano::Examples::Arrays.png -------------------------------------------------------------------------------- /examples/08-arrays/array.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/08-arrays/array.pr -------------------------------------------------------------------------------- /examples/08-arrays/array.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/08-arrays/array.pr.ast -------------------------------------------------------------------------------- /examples/08-arrays/array.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/08-arrays/array.pr.processed.ast -------------------------------------------------------------------------------- /examples/09-pipe-operator/Prerano::Examples::PipeOperator.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/09-pipe-operator/Prerano::Examples::PipeOperator.cfg -------------------------------------------------------------------------------- /examples/09-pipe-operator/Prerano::Examples::PipeOperator.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/09-pipe-operator/Prerano::Examples::PipeOperator.php -------------------------------------------------------------------------------- /examples/09-pipe-operator/Prerano::Examples::PipeOperator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/09-pipe-operator/Prerano::Examples::PipeOperator.png -------------------------------------------------------------------------------- /examples/09-pipe-operator/pipe.pr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/09-pipe-operator/pipe.pr -------------------------------------------------------------------------------- /examples/09-pipe-operator/pipe.pr.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/09-pipe-operator/pipe.pr.ast -------------------------------------------------------------------------------- /examples/09-pipe-operator/pipe.pr.processed.ast: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/09-pipe-operator/pipe.pr.processed.ast -------------------------------------------------------------------------------- /examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/README.md -------------------------------------------------------------------------------- /examples/rebuild.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/examples/rebuild.php -------------------------------------------------------------------------------- /grammar/.gitignore: -------------------------------------------------------------------------------- 1 | *.output -------------------------------------------------------------------------------- /grammar/language.y: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/grammar/language.y -------------------------------------------------------------------------------- /grammar/parser.template.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/grammar/parser.template.php -------------------------------------------------------------------------------- /grammar/rebuildParser.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/grammar/rebuildParser.php -------------------------------------------------------------------------------- /grammar/tokens.template.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/grammar/tokens.template.php -------------------------------------------------------------------------------- /lib/AST/Node.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node.php -------------------------------------------------------------------------------- /lib/AST/Node/Arg.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Arg.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Array_.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Array_.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Assign.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Assign.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/BooleanOr.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/BooleanOr.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/Div.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/Div.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/Equals.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/Equals.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/Minus.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/Minus.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/Mod.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/Mod.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/Mul.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/Mul.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/BinaryOp/Plus.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/BinaryOp/Plus.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/FuncCall.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/FuncCall.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/IdentifierReference.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/IdentifierReference.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Is.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Is.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Match.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Match.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/MatchEntry.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/MatchEntry.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/MethodCall.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/MethodCall.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Pipe.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Pipe.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/PointerDereference.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/PointerDereference.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Function_.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Function_.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Intersection.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Intersection.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Named.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Named.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Pointer.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Pointer.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Specification.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Specification.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Union.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Union.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Type/Value.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Type/Value.php -------------------------------------------------------------------------------- /lib/AST/Node/Expr/Variable.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Expr/Variable.php -------------------------------------------------------------------------------- /lib/AST/Node/Name.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Name.php -------------------------------------------------------------------------------- /lib/AST/Node/Name/Qualified.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ircmaxell/prerano/HEAD/lib/AST/Node/Name/Qualified.php -------------------------------------------------------------------------------- /lib/AST/Node/Scalar.php: -------------------------------------------------------------------------------- 1 |