Types
PythonNodeKind = enum pythonCompoundStatement, ## _compound_statement pythonSimpleStatement, ## _simple_statement pythonExpression, ## expression pythonParameter, ## parameter pythonPattern, ## pattern pythonPrimaryExpression, ## primary_expression pythonAliasedImport, ## aliased_import pythonArgumentList, ## argument_list pythonAssertStatement, ## assert_statement pythonAssignment, ## assignment pythonAttribute, ## attribute pythonAugmentedAssignment, ## augmented_assignment pythonAwait, ## await pythonBinaryOperator, ## binary_operator pythonBlock, ## block pythonBooleanOperator, ## boolean_operator pythonBreakStatement, ## break_statement pythonCall, ## call pythonChevron, ## chevron pythonClassDefinition, ## class_definition pythonComparisonOperator, ## comparison_operator pythonConcatenatedString, ## concatenated_string pythonConditionalExpression, ## conditional_expression pythonContinueStatement, ## continue_statement pythonDecoratedDefinition, ## decorated_definition pythonDecorator, ## decorator pythonDefaultParameter, ## default_parameter pythonDeleteStatement, ## delete_statement pythonDictionary, ## dictionary pythonDictionaryComprehension, ## dictionary_comprehension pythonDictionarySplat, ## dictionary_splat pythonDictionarySplatPattern, ## dictionary_splat_pattern pythonDottedName, ## dotted_name pythonElifClause, ## elif_clause pythonElseClause, ## else_clause pythonExceptClause, ## except_clause pythonExecStatement, ## exec_statement pythonExpressionList, ## expression_list pythonExpressionStatement, ## expression_statement pythonFinallyClause, ## finally_clause pythonForInClause, ## for_in_clause pythonForStatement, ## for_statement pythonFormatExpression, ## format_expression pythonFormatSpecifier, ## format_specifier pythonFunctionDefinition, ## function_definition pythonFutureImportStatement, ## future_import_statement pythonGeneratorExpression, ## generator_expression pythonGlobalStatement, ## global_statement pythonIfClause, ## if_clause pythonIfStatement, ## if_statement pythonImportFromStatement, ## import_from_statement pythonImportPrefix, ## import_prefix pythonImportStatement, ## import_statement pythonInterpolation, ## interpolation pythonKeywordArgument, ## keyword_argument pythonLambda, ## lambda pythonLambdaParameters, ## lambda_parameters pythonList, ## list pythonListComprehension, ## list_comprehension pythonListPattern, ## list_pattern pythonListSplat, ## list_splat pythonListSplatPattern, ## list_splat_pattern pythonModule, ## module pythonNamedExpression, ## named_expression pythonNonlocalStatement, ## nonlocal_statement pythonNotOperator, ## not_operator pythonPair, ## pair pythonParameters, ## parameters pythonParenthesizedExpression, ## parenthesized_expression pythonParenthesizedListSplat, ## parenthesized_list_splat pythonPassStatement, ## pass_statement pythonPatternList, ## pattern_list pythonPrintStatement, ## print_statement pythonRaiseStatement, ## raise_statement pythonRelativeImport, ## relative_import pythonReturnStatement, ## return_statement pythonSet, ## set pythonSetComprehension, ## set_comprehension pythonSlice, ## slice pythonString, ## string pythonSubscript, ## subscript pythonTryStatement, ## try_statement pythonTuple, ## tuple pythonTuplePattern, ## tuple_pattern pythonType, ## type pythonTypedDefaultParameter, ## typed_default_parameter pythonTypedParameter, ## typed_parameter pythonUnaryOperator, ## unary_operator pythonWhileStatement, ## while_statement pythonWildcardImport, ## wildcard_import pythonWithClause, ## with_clause pythonWithItem, ## with_item pythonWithStatement, ## with_statement pythonYield, ## yield pythonExclamationEqualTok, ## != pythonQuoteTok, ## " pythonPercentTok, ## % pythonPercentEqualTok, ## %= pythonAmpersandTok, ## & pythonAmpersandEqualTok, ## &= pythonLParTok, ## ( pythonRParTok, ## ) pythonAsteriskTok, ## * pythonDoubleAsteriskTok, ## ** pythonDoubleAsteriskEqualTok, ## **= pythonAsteriskEqualTok, ## *= pythonPlusTok, ## + pythonPlusEqualTok, ## += pythonCommaTok, ## , pythonMinusTok, ## - pythonMinusEqualTok, ## -= pythonMinusGreaterThanTok, ## -> pythonDotTok, ## . pythonSlashTok, ## / pythonDoubleSlashTok, ## // pythonDoubleSlashEqualTok, ## //= pythonSlashEqualTok, ## /= pythonColonTok, ## : pythonColonEqualTok, ## := pythonLessThanTok, ## < pythonDoubleLessThanTok, ## << pythonDoubleLessThanEqualTok, ## <<= pythonLessThanEqualTok, ## <= pythonLessThanGreaterThanTok, ## <> pythonEqualTok, ## = pythonDoubleEqualTok, ## == pythonGreaterThanTok, ## > pythonGreaterThanEqualTok, ## >= pythonDoubleGreaterThanTok, ## >> pythonDoubleGreaterThanEqualTok, ## >>= pythonAtTok, ## @ pythonAtEqualTok, ## @= pythonLBrackTok, ## [ pythonRBrackTok, ## ] pythonAccentTok, ## ^ pythonAccentEqualTok, ## ^= pythonFutureTok, ## __future__ pythonAndTok, ## and pythonAsTok, ## as pythonAssertTok, ## assert pythonAsyncTok, ## async pythonAwaitTok, ## await pythonBreakTok, ## break pythonClassTok, ## class pythonComment, ## comment pythonContinueTok, ## continue pythonDefTok, ## def pythonDelTok, ## del pythonElifTok, ## elif pythonEllipsis, ## ellipsis pythonElseTok, ## else pythonEscapeSequence, ## escape_sequence pythonExceptTok, ## except pythonExecTok, ## exec pythonFalse, ## false pythonFinallyTok, ## finally pythonFloat, ## float pythonForTok, ## for pythonFromTok, ## from pythonGlobalTok, ## global pythonIdentifier, ## identifier pythonIfTok, ## if pythonImportTok, ## import pythonInTok, ## in pythonInteger, ## integer pythonIsTok, ## is pythonLambdaTok, ## lambda pythonNone, ## none pythonNonlocalTok, ## nonlocal pythonNotTok, ## not pythonOrTok, ## or pythonPassTok, ## pass pythonPrintTok, ## print pythonRaiseTok, ## raise pythonReturnTok, ## return pythonTrue, ## true pythonTryTok, ## try pythonTypeConversion, ## type_conversion pythonWhileTok, ## while pythonWithTok, ## with pythonYieldTok, ## yield pythonLCurlyTok, ## { pythonPipeTok, ## | pythonPipeEqualTok, ## |= pythonRCurlyTok, ## } pythonTildeTok, ## ~ pythonSyntaxError ## Tree-sitter parser syntax error
PythonExternalTok = enum pythonExtern_newline, ## _newline pythonExtern_indent, ## _indent pythonExtern_dedent, ## _dedent pythonExtern_string_start, ## _string_start pythonExtern_string_content, ## _string_content pythonExtern_string_end ## _string_end
TsPythonNode = distinct TSNode
PythonParser = distinct PtsParser
PythonNode = HtsNode[TsPythonNode, PythonNodeKind]
Procs
proc kind(node: TsPythonNode): PythonNodeKind {...}{.noSideEffect, raises: [Exception], tags: [RootEffect].}
proc tsNodeType(node: TsPythonNode): string {...}{.raises: [], tags: [].}
proc newTsPythonParser(): PythonParser {...}{.raises: [], tags: [].}
proc parseString(parser: PythonParser; str: string): TsPythonNode {...}{.raises: [], tags: [].}
proc parseTsPythonString(str: string): TsPythonNode {...}{.raises: [], tags: [].}
proc treeReprTsPython(str: string; unnamed: bool = false): string {...}{. raises: [ValueError, Exception, NilArgumentError], tags: [RootEffect].}
proc toHtsNode(node: TsPythonNode; str: ptr string): HtsNode[TsPythonNode, PythonNodeKind] {...}{.raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc toHtsTree(node: TsPythonNode; str: ptr string): PythonNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parsePythonString(str: ptr string; unnamed: bool = false): PythonNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parsePythonString(str: string; unnamed: bool = false): PythonNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
Funcs
func isNil(node: TsPythonNode): bool {...}{.raises: [], tags: [].}
func len(node: TsPythonNode; unnamed: bool = false): int {...}{.raises: [], tags: [].}
func has(node: TsPythonNode; idx: int; unnamed: bool = false): bool {...}{. raises: [], tags: [].}
func `$`(node: TsPythonNode): string {...}{.raises: [Exception], tags: [RootEffect].}
func `[]`(node: TsPythonNode; idx: int; kind: PythonNodeKind | set[PythonNodeKind]): TsPythonNode