javascript_wrapper

Types

JavascriptNodeKind = enum
  javascriptDeclaration,    ## _declaration
  javascriptDestructuringPattern, ## _destructuring_pattern
  javascriptExpression,     ## _expression
  javascriptStatement,      ## _statement
  javascriptArguments,      ## arguments
  javascriptArray,          ## array
  javascriptArrayPattern,   ## array_pattern
  javascriptArrowFunction,  ## arrow_function
  javascriptAssignmentExpression, ## assignment_expression
  javascriptAssignmentPattern, ## assignment_pattern
  javascriptAugmentedAssignmentExpression, ## augmented_assignment_expression
  javascriptAwaitExpression, ## await_expression
  javascriptBinaryExpression, ## binary_expression
  javascriptBreakStatement, ## break_statement
  javascriptCallExpression, ## call_expression
  javascriptCatchClause,    ## catch_clause
  javascriptClass,          ## class
  javascriptClassBody,      ## class_body
  javascriptClassDeclaration, ## class_declaration
  javascriptClassHeritage,  ## class_heritage
  javascriptComputedPropertyName, ## computed_property_name
  javascriptContinueStatement, ## continue_statement
  javascriptDebuggerStatement, ## debugger_statement
  javascriptDecorator,      ## decorator
  javascriptDoStatement,    ## do_statement
  javascriptElseClause,     ## else_clause
  javascriptEmptyStatement, ## empty_statement
  javascriptExportClause,   ## export_clause
  javascriptExportSpecifier, ## export_specifier
  javascriptExportStatement, ## export_statement
  javascriptExpressionStatement, ## expression_statement
  javascriptFinallyClause,  ## finally_clause
  javascriptForInStatement, ## for_in_statement
  javascriptForStatement,   ## for_statement
  javascriptFormalParameters, ## formal_parameters
  javascriptFunction,       ## function
  javascriptFunctionDeclaration, ## function_declaration
  javascriptGeneratorFunction, ## generator_function
  javascriptGeneratorFunctionDeclaration, ## generator_function_declaration
  javascriptIfStatement,    ## if_statement
  javascriptImport,         ## import
  javascriptImportClause,   ## import_clause
  javascriptImportSpecifier, ## import_specifier
  javascriptImportStatement, ## import_statement
  javascriptJsxAttribute,   ## jsx_attribute
  javascriptJsxClosingElement, ## jsx_closing_element
  javascriptJsxElement,     ## jsx_element
  javascriptJsxExpression,  ## jsx_expression
  javascriptJsxFragment,    ## jsx_fragment
  javascriptJsxNamespaceName, ## jsx_namespace_name
  javascriptJsxOpeningElement, ## jsx_opening_element
  javascriptJsxSelfClosingElement, ## jsx_self_closing_element
  javascriptLabeledStatement, ## labeled_statement
  javascriptLexicalDeclaration, ## lexical_declaration
  javascriptMemberExpression, ## member_expression
  javascriptMetaProperty,   ## meta_property
  javascriptMethodDefinition, ## method_definition
  javascriptNamedImports,   ## named_imports
  javascriptNamespaceImport, ## namespace_import
  javascriptNestedIdentifier, ## nested_identifier
  javascriptNewExpression,  ## new_expression
  javascriptObject,         ## object
  javascriptObjectPattern,  ## object_pattern
  javascriptPair,           ## pair
  javascriptParenthesizedExpression, ## parenthesized_expression
  javascriptProgram,        ## program
  javascriptPublicFieldDefinition, ## public_field_definition
  javascriptRegex,          ## regex
  javascriptRestParameter,  ## rest_parameter
  javascriptReturnStatement, ## return_statement
  javascriptSequenceExpression, ## sequence_expression
  javascriptSpreadElement,  ## spread_element
  javascriptStatementBlock, ## statement_block
  javascriptString,         ## string
  javascriptSubscriptExpression, ## subscript_expression
  javascriptSwitchBody,     ## switch_body
  javascriptSwitchCase,     ## switch_case
  javascriptSwitchDefault,  ## switch_default
  javascriptSwitchStatement, ## switch_statement
  javascriptTemplateString, ## template_string
  javascriptTemplateSubstitution, ## template_substitution
  javascriptTernaryExpression, ## ternary_expression
  javascriptThrowStatement, ## throw_statement
  javascriptTryStatement,   ## try_statement
  javascriptUnaryExpression, ## unary_expression
  javascriptUpdateExpression, ## update_expression
  javascriptVariableDeclaration, ## variable_declaration
  javascriptVariableDeclarator, ## variable_declarator
  javascriptWhileStatement, ## while_statement
  javascriptWithStatement,  ## with_statement
  javascriptYieldExpression, ## yield_expression
  javascriptExclamationTok, ## !
  javascriptExclamationEqualTok, ## !=
  javascriptExclamationDoubleEqualTok, ## !==
  javascriptQuoteTok,       ## "
  javascriptDollarLCurlyTok, ## ${
  javascriptPercentTok,     ## %
  javascriptPercentEqualTok, ## %=
  javascriptAmpersandTok,   ## &
  javascriptDoubleAmpersandTok, ## &&
  javascriptDoubleAmpersandEqualTok, ## &&=
  javascriptAmpersandEqualTok, ## &=
  javascriptApostropheTok,  ## '
  javascriptLParTok,        ## (
  javascriptRParTok,        ## )
  javascriptAsteriskTok,    ## *
  javascriptDoubleAsteriskTok, ## **
  javascriptDoubleAsteriskEqualTok, ## **=
  javascriptAsteriskEqualTok, ## *=
  javascriptPlusTok,        ## +
  javascriptDoublePlusTok,  ## ++
  javascriptPlusEqualTok,   ## +=
  javascriptCommaTok,       ## ,
  javascriptMinusTok,       ## -
  javascriptDoubleMinusTok, ## --
  javascriptMinusEqualTok,  ## -=
  javascriptDotTok,         ## .
  javascriptTripleDotTok,   ## ...
  javascriptSlashTok,       ## /
  javascriptSlashEqualTok,  ## /=
  javascriptColonTok,       ## :
  javascriptSemicolonTok,   ## ;
  javascriptLessThanTok,    ## <
  javascriptDoubleLessThanTok, ## <<
  javascriptDoubleLessThanEqualTok, ## <<=
  javascriptLessThanEqualTok, ## <=
  javascriptEqualTok,       ## =
  javascriptDoubleEqualTok, ## ==
  javascriptTripleEqualTok, ## ===
  javascriptEqualGreaterThanTok, ## =>
  javascriptGreaterThanTok, ## >
  javascriptGreaterThanEqualTok, ## >=
  javascriptDoubleGreaterThanTok, ## >>
  javascriptDoubleGreaterThanEqualTok, ## >>=
  javascriptTripleGreaterThanTok, ## >>>
  javascriptTripleGreaterThanEqualTok, ## >>>=
  javascriptQuestionTok,    ## ?
  javascriptQuestionDotTok, ## ?.
  javascriptDoubleQuestionTok, ## ??
  javascriptDoubleQuestionEqualTok, ## ??=
  javascriptAtTok,          ## @
  javascriptLBrackTok,      ## [
  javascriptRBrackTok,      ## ]
  javascriptAccentTok,      ## ^
  javascriptAccentEqualTok, ## ^=
  javascriptBacktickTok,    ## `
  javascriptAsTok,          ## as
  javascriptAsyncTok,       ## async
  javascriptAwaitTok,       ## await
  javascriptBreakTok,       ## break
  javascriptCaseTok,        ## case
  javascriptCatchTok,       ## catch
  javascriptClassTok,       ## class
  javascriptComment,        ## comment
  javascriptConstTok,       ## const
  javascriptContinueTok,    ## continue
  javascriptDebuggerTok,    ## debugger
  javascriptDefaultTok,     ## default
  javascriptDeleteTok,      ## delete
  javascriptDoTok,          ## do
  javascriptElseTok,        ## else
  javascriptEscapeSequence, ## escape_sequence
  javascriptExportTok,      ## export
  javascriptExtendsTok,     ## extends
  javascriptFalse,          ## false
  javascriptFinallyTok,     ## finally
  javascriptForTok,         ## for
  javascriptFromTok,        ## from
  javascriptFunctionTok,    ## function
  javascriptGetTok,         ## get
  javascriptHashBangLine,   ## hash_bang_line
  javascriptIdentifier,     ## identifier
  javascriptIfTok,          ## if
  javascriptImportTok,      ## import
  javascriptInTok,          ## in
  javascriptInstanceofTok,  ## instanceof
  javascriptJsxText,        ## jsx_text
  javascriptLetTok,         ## let
  javascriptNewTok,         ## new
  javascriptNull,           ## null
  javascriptNumber,         ## number
  javascriptOfTok,          ## of
  javascriptPropertyIdentifier, ## property_identifier
  javascriptRegexFlags,     ## regex_flags
  javascriptRegexPattern,   ## regex_pattern
  javascriptReturnTok,      ## return
  javascriptSetTok,         ## set
  javascriptShorthandPropertyIdentifier, ## shorthand_property_identifier
  javascriptStatementIdentifier, ## statement_identifier
  javascriptStaticTok,      ## static
  javascriptSuper,          ## super
  javascriptSwitchTok,      ## switch
  javascriptTargetTok,      ## target
  javascriptThis,           ## this
  javascriptThrowTok,       ## throw
  javascriptTrue,           ## true
  javascriptTryTok,         ## try
  javascriptTypeofTok,      ## typeof
  javascriptUndefined,      ## undefined
  javascriptVarTok,         ## var
  javascriptVoidTok,        ## void
  javascriptWhileTok,       ## while
  javascriptWithTok,        ## with
  javascriptYieldTok,       ## yield
  javascriptLCurlyTok,      ## {
  javascriptPipeTok,        ## |
  javascriptPipeEqualTok,   ## |=
  javascriptDoublePipeTok,  ## ||
  javascriptDoublePipeEqualTok, ## ||=
  javascriptRCurlyTok,      ## }
  javascriptTildeTok,       ## ~
  javascriptComment2,       ## comment
  javascriptSyntaxError      ## Tree-sitter parser syntax error
JavascriptExternalTok = enum
  javascriptExtern_automatic_semicolon, ## _automatic_semicolon
  javascriptExtern_template_chars ## _template_chars
JavascriptNode = distinct TSNode
JavascriptParser = distinct PtsParser

Procs

proc kind(node: JavascriptNode): JavascriptNodeKind {...}{.noSideEffect,
    raises: [Exception], tags: [RootEffect].}
proc tsNodeType(node: JavascriptNode): string {...}{.raises: [], tags: [].}
proc newJavascriptParser(): JavascriptParser {...}{.raises: [], tags: [].}
proc parseString(parser: JavascriptParser; str: string): JavascriptNode {...}{.
    raises: [], tags: [].}
proc parseJavascriptString(str: string): JavascriptNode {...}{.raises: [], tags: [].}
proc treeRepr(mainNode: JavascriptNode; instr: string; withUnnamed: bool = false): string {...}{.
    raises: [Exception], tags: [RootEffect].}

Funcs

func `[]`(node: JavascriptNode; idx: int; withUnnamed: bool = false): JavascriptNode {...}{.
    raises: [], tags: [].}
func len(node: JavascriptNode; withUnnamed: bool = false): int {...}{.raises: [],
    tags: [].}

Iterators

iterator items(node: JavascriptNode; withUnnamed: bool = false): JavascriptNode {...}{.
    raises: [], tags: [].}