Types
RustNodeKind = enum rustDeclarationStatement, ## _declaration_statement rustExpression, ## _expression rustLiteral, ## _literal rustLiteralPattern, ## _literal_pattern rustPattern, ## _pattern rustType, ## _type rustAbstractType, ## abstract_type rustArguments, ## arguments rustArrayExpression, ## array_expression rustArrayType, ## array_type rustAssignmentExpression, ## assignment_expression rustAssociatedType, ## associated_type rustAsyncBlock, ## async_block rustAttributeItem, ## attribute_item rustAwaitExpression, ## await_expression rustBaseFieldInitializer, ## base_field_initializer rustBinaryExpression, ## binary_expression rustBlock, ## block rustBooleanLiteral, ## boolean_literal rustBoundedType, ## bounded_type rustBracketedType, ## bracketed_type rustBreakExpression, ## break_expression rustCallExpression, ## call_expression rustCapturedPattern, ## captured_pattern rustClosureExpression, ## closure_expression rustClosureParameters, ## closure_parameters rustCompoundAssignmentExpr, ## compound_assignment_expr rustConstBlock, ## const_block rustConstItem, ## const_item rustConstParameter, ## const_parameter rustConstrainedTypeParameter, ## constrained_type_parameter rustContinueExpression, ## continue_expression rustDeclarationList, ## declaration_list rustDynamicType, ## dynamic_type rustElseClause, ## else_clause rustEmptyStatement, ## empty_statement rustEmptyType, ## empty_type rustEnumItem, ## enum_item rustEnumVariant, ## enum_variant rustEnumVariantList, ## enum_variant_list rustExternCrateDeclaration, ## extern_crate_declaration rustExternModifier, ## extern_modifier rustFieldDeclaration, ## field_declaration rustFieldDeclarationList, ## field_declaration_list rustFieldExpression, ## field_expression rustFieldInitializer, ## field_initializer rustFieldInitializerList, ## field_initializer_list rustFieldPattern, ## field_pattern rustForExpression, ## for_expression rustForLifetimes, ## for_lifetimes rustForeignModItem, ## foreign_mod_item rustFragmentSpecifier, ## fragment_specifier rustFunctionItem, ## function_item rustFunctionModifiers, ## function_modifiers rustFunctionSignatureItem, ## function_signature_item rustFunctionType, ## function_type rustGenericFunction, ## generic_function rustGenericType, ## generic_type rustGenericTypeWithTurbofish, ## generic_type_with_turbofish rustHigherRankedTraitBound, ## higher_ranked_trait_bound rustIfExpression, ## if_expression rustIfLetExpression, ## if_let_expression rustImplItem, ## impl_item rustIndexExpression, ## index_expression rustInnerAttributeItem, ## inner_attribute_item rustLetDeclaration, ## let_declaration rustLifetime, ## lifetime rustLoopExpression, ## loop_expression rustLoopLabel, ## loop_label rustMacroDefinition, ## macro_definition rustMacroInvocation, ## macro_invocation rustMacroRule, ## macro_rule rustMatchArm, ## match_arm rustMatchBlock, ## match_block rustMatchExpression, ## match_expression rustMatchPattern, ## match_pattern rustMetaArguments, ## meta_arguments rustMetaItem, ## meta_item rustModItem, ## mod_item rustMutPattern, ## mut_pattern rustNegativeLiteral, ## negative_literal rustOptionalTypeParameter, ## optional_type_parameter rustOrPattern, ## or_pattern rustOrderedFieldDeclarationList, ## ordered_field_declaration_list rustParameter, ## parameter rustParameters, ## parameters rustParenthesizedExpression, ## parenthesized_expression rustPointerType, ## pointer_type rustQualifiedType, ## qualified_type rustRangeExpression, ## range_expression rustRangePattern, ## range_pattern rustRefPattern, ## ref_pattern rustReferenceExpression, ## reference_expression rustReferencePattern, ## reference_pattern rustReferenceType, ## reference_type rustRemainingFieldPattern, ## remaining_field_pattern rustRemovedTraitBound, ## removed_trait_bound rustReturnExpression, ## return_expression rustScopedIdentifier, ## scoped_identifier rustScopedTypeIdentifier, ## scoped_type_identifier rustScopedUseList, ## scoped_use_list rustSelfParameter, ## self_parameter rustShorthandFieldInitializer, ## shorthand_field_initializer rustSlicePattern, ## slice_pattern rustSourceFile, ## source_file rustStaticItem, ## static_item rustStringLiteral, ## string_literal rustStructExpression, ## struct_expression rustStructItem, ## struct_item rustStructPattern, ## struct_pattern rustTokenBindingPattern, ## token_binding_pattern rustTokenRepetition, ## token_repetition rustTokenRepetitionPattern, ## token_repetition_pattern rustTokenTree, ## token_tree rustTokenTreePattern, ## token_tree_pattern rustTraitBounds, ## trait_bounds rustTraitItem, ## trait_item rustTryExpression, ## try_expression rustTupleExpression, ## tuple_expression rustTuplePattern, ## tuple_pattern rustTupleStructPattern, ## tuple_struct_pattern rustTupleType, ## tuple_type rustTypeArguments, ## type_arguments rustTypeBinding, ## type_binding rustTypeCastExpression, ## type_cast_expression rustTypeItem, ## type_item rustTypeParameters, ## type_parameters rustUnaryExpression, ## unary_expression rustUnionItem, ## union_item rustUnitExpression, ## unit_expression rustUnitType, ## unit_type rustUnsafeBlock, ## unsafe_block rustUseAsClause, ## use_as_clause rustUseDeclaration, ## use_declaration rustUseList, ## use_list rustUseWildcard, ## use_wildcard rustVariadicParameter, ## variadic_parameter rustVisibilityModifier, ## visibility_modifier rustWhereClause, ## where_clause rustWherePredicate, ## where_predicate rustWhileExpression, ## while_expression rustWhileLetExpression, ## while_let_expression rustExclamationTok, ## ! rustExclamationEqualTok, ## != rustQuoteTok, ## " rustHashTok, ## # rustDollarTok, ## $ rustPercentTok, ## % rustPercentEqualTok, ## %= rustAmpersandTok, ## & rustDoubleAmpersandTok, ## && rustAmpersandEqualTok, ## &= rustApostropheTok, ## ' rustLParTok, ## ( rustRParTok, ## ) rustAsteriskTok, ## * rustAsteriskEqualTok, ## *= rustPlusTok, ## + rustPlusEqualTok, ## += rustCommaTok, ## , rustMinusTok, ## - rustMinusEqualTok, ## -= rustMinusGreaterThanTok, ## -> rustDotTok, ## . rustDoubleDotTok, ## .. rustTripleDotTok, ## ... rustDoubleDotEqualTok, ## ..= rustSlashTok, ## / rustSlashEqualTok, ## /= rustColonTok, ## : rustDoubleColonTok, ## :: rustSemicolonTok, ## ; rustLessThanTok, ## < rustDoubleLessThanTok, ## << rustDoubleLessThanEqualTok, ## <<= rustLessThanEqualTok, ## <= rustEqualTok, ## = rustDoubleEqualTok, ## == rustEqualGreaterThanTok, ## => rustGreaterThanTok, ## > rustGreaterThanEqualTok, ## >= rustDoubleGreaterThanTok, ## >> rustDoubleGreaterThanEqualTok, ## >>= rustQuestionTok, ## ? rustAtTok, ## @ rustLBrackTok, ## [ rustRBrackTok, ## ] rustAccentTok, ## ^ rustAccentEqualTok, ## ^= rustUnderscoreTok, ## _ rustAsTok, ## as rustAsyncTok, ## async rustAwaitTok, ## await rustBlockTok, ## block rustBlockComment, ## block_comment rustBreakTok, ## break rustCharLiteral, ## char_literal rustConstTok, ## const rustContinueTok, ## continue rustCrate, ## crate rustDefaultTok, ## default rustDynTok, ## dyn rustElseTok, ## else rustEnumTok, ## enum rustEscapeSequence, ## escape_sequence rustExprTok, ## expr rustExternTok, ## extern rustFalseTok, ## false rustFieldIdentifier, ## field_identifier rustFloatLiteral, ## float_literal rustFnTok, ## fn rustForTok, ## for rustIdentTok, ## ident rustIdentifier, ## identifier rustIfTok, ## if rustImplTok, ## impl rustInTok, ## in rustIntegerLiteral, ## integer_literal rustItemTok, ## item rustLetTok, ## let rustLifetimeTok, ## lifetime rustLineComment, ## line_comment rustLiteralTok, ## literal rustLoopTok, ## loop rustMacroUnderscorerulesExclamationTok, ## macro_rules! rustMatchTok, ## match rustMetaTok, ## meta rustMetavariable, ## metavariable rustModTok, ## mod rustMoveTok, ## move rustMutableSpecifier, ## mutable_specifier rustPatTok, ## pat rustPathTok, ## path rustPrimitiveType, ## primitive_type rustPubTok, ## pub rustRawStringLiteral, ## raw_string_literal rustRefTok, ## ref rustReturnTok, ## return rustSelf, ## self rustShorthandFieldIdentifier, ## shorthand_field_identifier rustStaticTok, ## static rustStmtTok, ## stmt rustStructTok, ## struct rustSuper, ## super rustTraitTok, ## trait rustTrueTok, ## true rustTtTok, ## tt rustTyTok, ## ty rustTypeTok, ## type rustTypeIdentifier, ## type_identifier rustUnionTok, ## union rustUnsafeTok, ## unsafe rustUseTok, ## use rustVisTok, ## vis rustWhereTok, ## where rustWhileTok, ## while rustLCurlyTok, ## { rustPipeTok, ## | rustPipeEqualTok, ## |= rustDoublePipeTok, ## || rustRCurlyTok, ## } rustSyntaxError ## Tree-sitter parser syntax error
RustExternalTok = enum rustExtern_string_content, ## _string_content rustExternRaw_string_literal, ## raw_string_literal rustExternFloat_literal, ## float_literal rustExternBlock_comment ## block_comment
TsRustNode = distinct TSNode
RustParser = distinct PtsParser
RustNode = HtsNode[TsRustNode, RustNodeKind]
Procs
proc kind(node: TsRustNode): RustNodeKind {...}{.noSideEffect, raises: [Exception], tags: [RootEffect].}
proc tsNodeType(node: TsRustNode): string {...}{.raises: [], tags: [].}
proc newTsRustParser(): RustParser {...}{.raises: [], tags: [].}
proc parseString(parser: RustParser; str: string): TsRustNode {...}{.raises: [], tags: [].}
proc parseTsRustString(str: string): TsRustNode {...}{.raises: [], tags: [].}
proc treeReprTsRust(str: string; unnamed: bool = false): string {...}{. raises: [ValueError, Exception, NilArgumentError], tags: [RootEffect].}
proc toHtsNode(node: TsRustNode; str: ptr string): HtsNode[TsRustNode, RustNodeKind] {...}{.raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc toHtsTree(node: TsRustNode; str: ptr string): RustNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseRustString(str: ptr string; unnamed: bool = false): RustNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseRustString(str: string; unnamed: bool = false): RustNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
Funcs
func isNil(node: TsRustNode): bool {...}{.raises: [], tags: [].}
func len(node: TsRustNode; unnamed: bool = false): int {...}{.raises: [], tags: [].}
func has(node: TsRustNode; idx: int; unnamed: bool = false): bool {...}{.raises: [], tags: [].}
func `$`(node: TsRustNode): string {...}{.raises: [Exception], tags: [RootEffect].}
func `[]`(node: TsRustNode; idx: int; kind: RustNodeKind | set[RustNodeKind]): TsRustNode