lua_wrapper

Types

LuaNodeKind = enum
  luaArguments,             ## arguments
  luaBinaryOperation,       ## binary_operation
  luaConditionExpression,   ## condition_expression
  luaDoStatement,           ## do_statement
  luaElse,                  ## else
  luaElseif,                ## elseif
  luaExpression,            ## expression
  luaField,                 ## field
  luaFieldExpression,       ## field_expression
  luaForInStatement,        ## for_in_statement
  luaForStatement,          ## for_statement
  luaFunction,              ## function
  luaFunctionCall,          ## function_call
  luaFunctionDefinition,    ## function_definition
  luaFunctionName,          ## function_name
  luaFunctionNameField,     ## function_name_field
  luaGlobalVariable,        ## global_variable
  luaGotoStatement,         ## goto_statement
  luaIfStatement,           ## if_statement
  luaLabelStatement,        ## label_statement
  luaLocalFunction,         ## local_function
  luaLocalVariableDeclaration, ## local_variable_declaration
  luaLoopExpression,        ## loop_expression
  luaParameters,            ## parameters
  luaProgram,               ## program
  luaRepeatStatement,       ## repeat_statement
  luaReturnStatement,       ## return_statement
  luaTable,                 ## table
  luaUnaryOperation,        ## unary_operation
  luaVariableDeclaration,   ## variable_declaration
  luaVariableDeclarator,    ## variable_declarator
  luaWhileStatement,        ## while_statement
  luaHashTok,               ## #
  luaPercentTok,            ## %
  luaAmpersandTok,          ## &
  luaLParTok,               ## (
  luaRParTok,               ## )
  luaAsteriskTok,           ## *
  luaPlusTok,               ## +
  luaCommaTok,              ## ,
  luaMinusTok,              ## -
  luaDotTok,                ## .
  luaDoubleDotTok,          ## ..
  luaSlashTok,              ## /
  luaDoubleSlashTok,        ## //
  luaColonTok,              ## :
  luaDoubleColonTok,        ## ::
  luaSemicolonTok,          ## ;
  luaLessThanTok,           ## <
  luaDoubleLessThanTok,     ## <<
  luaLessThanEqualTok,      ## <=
  luaEqualTok,              ## =
  luaDoubleEqualTok,        ## ==
  luaGreaterThanTok,        ## >
  luaGreaterThanEqualTok,   ## >=
  luaDoubleGreaterThanTok,  ## >>
  luaLBrackTok,             ## [
  luaRBrackTok,             ## ]
  luaAccentTok,             ## ^
  luaGTok,                  ## _G
  luaVERSIONTok,            ## _VERSION
  luaAndTok,                ## and
  luaBreakStatement,        ## break_statement
  luaComment,               ## comment
  luaDoTok,                 ## do
  luaElseTok,               ## else
  luaElseifTok,             ## elseif
  luaEndTok,                ## end
  luaFalse,                 ## false
  luaForTok,                ## for
  luaFunctionTok,           ## function
  luaGotoTok,               ## goto
  luaIdentifier,            ## identifier
  luaIfTok,                 ## if
  luaInTok,                 ## in
  luaLocalTok,              ## local
  luaMethod,                ## method
  luaNext,                  ## next
  luaNil,                   ## nil
  luaNotTok,                ## not
  luaNumber,                ## number
  luaOrTok,                 ## or
  luaPropertyIdentifier,    ## property_identifier
  luaRepeatTok,             ## repeat
  luaReturnTok,             ## return
  luaSelf,                  ## self
  luaSpread,                ## spread
  luaString,                ## string
  luaThenTok,               ## then
  luaTrue,                  ## true
  luaUntilTok,              ## until
  luaWhileTok,              ## while
  luaLCurlyTok,             ## {
  luaPipeTok,               ## |
  luaRCurlyTok,             ## }
  luaTildeTok,              ## ~
  luaTildeEqualTok,         ## ~=
  luaSyntaxError             ## Tree-sitter parser syntax error
LuaExternalTok = enum
  luaExternComment,         ## comment
  luaExternString            ## string
TsLuaNode = distinct TSNode
LuaParser = distinct PtsParser
LuaNode = HtsNode[TsLuaNode, LuaNodeKind]

Procs

proc kind(node: TsLuaNode): LuaNodeKind {...}{.noSideEffect, raises: [Exception],
    tags: [RootEffect].}
proc tsNodeType(node: TsLuaNode): string {...}{.raises: [], tags: [].}
proc newTsLuaParser(): LuaParser {...}{.raises: [], tags: [].}
proc parseString(parser: LuaParser; str: string): TsLuaNode {...}{.raises: [],
    tags: [].}
proc parseTsLuaString(str: string): TsLuaNode {...}{.raises: [], tags: [].}
proc treeReprTsLua(str: string; unnamed: bool = false): string {...}{.
    raises: [ValueError, Exception, NilArgumentError], tags: [RootEffect].}
proc toHtsNode(node: TsLuaNode; str: ptr string): HtsNode[TsLuaNode, LuaNodeKind] {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc toHtsTree(node: TsLuaNode; str: ptr string): LuaNode {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseLuaString(str: ptr string; unnamed: bool = false): LuaNode {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseLuaString(str: string; unnamed: bool = false): LuaNode {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}

Funcs

func isNil(node: TsLuaNode): bool {...}{.raises: [], tags: [].}
func len(node: TsLuaNode; unnamed: bool = false): int {...}{.raises: [], tags: [].}
func has(node: TsLuaNode; idx: int; unnamed: bool = false): bool {...}{.raises: [],
    tags: [].}
func `$`(node: TsLuaNode): string {...}{.raises: [Exception], tags: [RootEffect].}
func `[]`(node: TsLuaNode; idx: int; kind: LuaNodeKind | set[LuaNodeKind]): TsLuaNode