Types
FennelNodeKind = enum fennelAssignment, ## assignment fennelAssignments, ## assignments fennelBoolean, ## boolean fennelDoStatement, ## do_statement fennelEach, ## each fennelEachClause, ## each_clause fennelFieldExpression, ## field_expression fennelFor, ## for fennelForClause, ## for_clause fennelFunctionCall, ## function_call fennelFunctionDefinition, ## function_definition fennelGlobalDefinition, ## global_definition fennelHashFunctionDefinition, ## hash_function_definition fennelIdentifier, ## identifier fennelIfStatement, ## if_statement fennelLambdaDefinition, ## lambda_definition fennelLetDefinition, ## let_definition fennelLocalDefinition, ## local_definition fennelMatchStatement, ## match_statement fennelMultiValueAssignment, ## multi_value_assignment fennelNil, ## nil fennelParameters, ## parameters fennelProgram, ## program fennelQuotedValue, ## quoted_value fennelRequire, ## require fennelSequentialTable, ## sequential_table fennelSet, ## set fennelString, ## string fennelTable, ## table fennelTset, ## tset fennelUnquotedValue, ## unquoted_value fennelValueList, ## value_list fennelVarDefinition, ## var_definition fennelWhenStatement, ## when_statement fennelWhile, ## while fennelQuoteTok, ## " fennelHashTok, ## # fennelPercentTok, ## % fennelApostropheTok, ## ' fennelLParTok, ## ( fennelRParTok, ## ) fennelAsteriskTok, ## * fennelPlusTok, ## + fennelCommaTok, ## , fennelMinusTok, ## - fennelMinusGreaterThanTok, ## -> fennelMinusDoubleGreaterThanTok, ## ->> fennelMinusQuestionGreaterThanTok, ## -?> fennelMinusQuestionDoubleGreaterThanTok, ## -?>> fennelDotTok, ## . fennelDoubleDotTok, ## .. fennelTripleDotTok, ## ... fennelSlashTok, ## / fennelDoubleSlashTok, ## // fennelLessThanTok, ## < fennelLessThanEqualTok, ## <= fennelEqualTok, ## = fennelGreaterThanTok, ## > fennelGreaterThanEqualTok, ## >= fennelLBrackTok, ## [ fennelRBrackTok, ## ] fennelAccentTok, ## ^ fennelENVTok, ## _ENV fennelGTok, ## _G fennelVERSIONTok, ## _VERSION fennelBacktickTok, ## ` fennelAndTok, ## and fennelArgTok, ## arg fennelAssertTok, ## assert fennelCollectgarbageTok, ## collectgarbage fennelComment, ## comment fennelCoroutineTok, ## coroutine fennelDebugTok, ## debug fennelDoTok, ## do fennelDofileTok, ## dofile fennelDotoTok, ## doto fennelEachTok, ## each fennelErrorTok, ## error fennelEvalMinuscompilerTok, ## eval-compiler fennelFalseTok, ## false fennelField, ## field fennelFnTok, ## fn fennelForTok, ## for fennelGensymTok, ## gensym fennelGetmetatableTok, ## getmetatable fennelGlobalTok, ## global fennelHashfnTok, ## hashfn fennelIfTok, ## if fennelImportMinusmacrosTok, ## import-macros fennelInMinusscopeQuestionTok, ## in-scope? fennelIncludeTok, ## include fennelIpairsTok, ## ipairs fennelLambdaTok, ## lambda fennelLetTok, ## let fennelListTok, ## list fennelListQuestionTok, ## list? fennelLoadTok, ## load fennelLoadfileTok, ## loadfile fennelLoadstringTok, ## loadstring fennelLocalTok, ## local fennelMacroTok, ## macro fennelMacrodebugTok, ## macrodebug fennelMacroexpandTok, ## macroexpand fennelMacrosTok, ## macros fennelMatchTok, ## match fennelMultiMinussymQuestionTok, ## multi-sym? fennelNextTok, ## next fennelNilTok, ## nil fennelNotTok, ## not fennelNotEqualTok, ## not= fennelNumber, ## number fennelOrTok, ## or fennelPackageTok, ## package fennelPairsTok, ## pairs fennelPcallTok, ## pcall fennelPrintTok, ## print fennelRawequalTok, ## rawequal fennelRawgetTok, ## rawget fennelRawlenTok, ## rawlen fennelRawsetTok, ## rawset fennelRequireTok, ## require fennelRequireMinusmacrosTok, ## require-macros fennelSelectTok, ## select fennelSequenceQuestionTok, ## sequence? fennelSetTok, ## set fennelSetmetatableTok, ## setmetatable fennelStringTok, ## string fennelSymTok, ## sym fennelSymQuestionTok, ## sym? fennelTableTok, ## table fennelTableQuestionTok, ## table? fennelTonumberTok, ## tonumber fennelTostringTok, ## tostring fennelTrueTok, ## true fennelTsetTok, ## tset fennelTypeTok, ## type fennelUnpackTok, ## unpack fennelVarTok, ## var fennelVargQuestionTok, ## varg? fennelWhenTok, ## when fennelWhileTok, ## while fennelXpcallTok, ## xpcall fennelLCurlyTok, ## { fennelRCurlyTok, ## } fennelλTok, ## λ fennelSyntaxError ## Tree-sitter parser syntax error
FennelExternalTok = enum fennelExternField, ## field fennelExternColon ## colon
TsFennelNode = distinct TSNode
FennelParser = distinct PtsParser
FennelNode = HtsNode[TsFennelNode, FennelNodeKind]
Procs
proc kind(node: TsFennelNode): FennelNodeKind {...}{.noSideEffect, raises: [Exception], tags: [RootEffect].}
proc tsNodeType(node: TsFennelNode): string {...}{.raises: [], tags: [].}
proc newTsFennelParser(): FennelParser {...}{.raises: [], tags: [].}
proc parseString(parser: FennelParser; str: string): TsFennelNode {...}{.raises: [], tags: [].}
proc parseTsFennelString(str: string): TsFennelNode {...}{.raises: [], tags: [].}
proc treeReprTsFennel(str: string; unnamed: bool = false): string {...}{. raises: [ValueError, Exception, NilArgumentError], tags: [RootEffect].}
proc toHtsNode(node: TsFennelNode; str: ptr string): HtsNode[TsFennelNode, FennelNodeKind] {...}{.raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc toHtsTree(node: TsFennelNode; str: ptr string): FennelNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseFennelString(str: ptr string; unnamed: bool = false): FennelNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseFennelString(str: string; unnamed: bool = false): FennelNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
Funcs
func isNil(node: TsFennelNode): bool {...}{.raises: [], tags: [].}
func len(node: TsFennelNode; unnamed: bool = false): int {...}{.raises: [], tags: [].}
func has(node: TsFennelNode; idx: int; unnamed: bool = false): bool {...}{. raises: [], tags: [].}
func `$`(node: TsFennelNode): string {...}{.raises: [Exception], tags: [RootEffect].}
func `[]`(node: TsFennelNode; idx: int; kind: FennelNodeKind | set[FennelNodeKind]): TsFennelNode