sweetsyntax

Search:
Group by:

SweetSyntax is a powerful YAML-based generic parser and AST explorer for analyzing programming languages.

Written in Nim, it provides a flexible foundation for building high-level parsers, syntax highlighters, domain-specific languages, bundlers, minifiers, obfuscators, linters, or any sweet tool that requires a structured representation of source code.

Exports

rust, featRegex, SweetFilter, InfixEntry, Definition, PostfixGroup, parseHook, c, parseHook, TernaryDef, StatementsSpec, SweetLexerInit, featGenerators, go, SweetSpec, d, Pattern, featArrowFn, Assoc, IdentsTable, ruby, php, AstNode, InfixGroup, AssocKind, knownSyntaxTable, Definitions, newSyntax, OperatorsSpec, SymbolsTable, parseHook, assocRight, KnownSyntax, py, parseHook, featTemplateLit, parseHook, assocLeft, js, PrefixGroup, StatementSpec, FeaturesSpec, leftAssoc, featAdjacentConcat, featAsync, featLabeledStmt, rightAssoc, featCommandSyntax, SweetSyntax, nim, BlocksSpec, parseHook, getKnownSyntax, AssignmentDef, LanguageFeature, getFullInput, getLexeme, charAt, SweetLexer, tkInt, tkRegex, getTokenValue, tkDocComment, SweetTokenKind, getToken, initLexerFromFile, SweetLexerError, Token, tkFloat, tkIdentifier, tkChar, initLexer, initLexerFromFile, getContext, closeLexer, resetLexer, restoreLexer, initLexer, initLexerFromMemFile, tkString, markLexer, LexerMark, tkComment, tkPunct, newInlineComment, add, stampFrom, newIdent, Node, dumpTree, newEmptyNode, dumpTree, LeafNodes, newNode, pairs, []=, newPostfix, items, newFunction, newIdent, newBlockNode, newFunction, add, len, stamp, stamp, NodeKind, newNode, treeRepr, OpenAstProgram, [], newDocComment, [], PrefixHandler, parseCommentGeneric, walkOpt, parseIndentBlock, exprHandler, expect, applyPrecompiled, parseArrayLiteral, parseStatement, compile, stampMissing, parseHexFloat, stmtHandler, walk, OpenAstParsingError, prefixHandler, expectWalk, error, ParsingCallback, parseScript, parseBlock, parseExpression, StmtHandler, parseGroupExpr, parseObjectLiteral, GenericParser, parseCommaExpr, ExpressionHandler