Types
RubyNodeKind = enum rubyArg, ## _arg rubyLhs, ## _lhs rubyMethodName, ## _method_name rubyPrimary, ## _primary rubyStatement, ## _statement rubyVariable, ## _variable rubyAlias, ## alias rubyArgumentList, ## argument_list rubyArray, ## array rubyAssignment, ## assignment rubyBareString, ## bare_string rubyBareSymbol, ## bare_symbol rubyBegin, ## begin rubyBeginBlock, ## begin_block rubyBinary, ## binary rubyBlock, ## block rubyBlockArgument, ## block_argument rubyBlockParameter, ## block_parameter rubyBlockParameters, ## block_parameters rubyBreak, ## break rubyCall, ## call rubyCase, ## case rubyChainedString, ## chained_string rubyClass, ## class rubyConditional, ## conditional rubyDelimitedSymbol, ## delimited_symbol rubyDestructuredLeftAssignment, ## destructured_left_assignment rubyDestructuredParameter, ## destructured_parameter rubyDo, ## do rubyDoBlock, ## do_block rubyElementReference, ## element_reference rubyElse, ## else rubyElsif, ## elsif rubyEmptyStatement, ## empty_statement rubyEndBlock, ## end_block rubyEnsure, ## ensure rubyExceptionVariable, ## exception_variable rubyExceptions, ## exceptions rubyFor, ## for rubyHash, ## hash rubyHashSplatArgument, ## hash_splat_argument rubyHashSplatParameter, ## hash_splat_parameter rubyHeredocBody, ## heredoc_body rubyIf, ## if rubyIfModifier, ## if_modifier rubyIn, ## in rubyInterpolation, ## interpolation rubyKeywordParameter, ## keyword_parameter rubyLambda, ## lambda rubyLambdaParameters, ## lambda_parameters rubyLeftAssignmentList, ## left_assignment_list rubyMethod, ## method rubyMethodParameters, ## method_parameters rubyModule, ## module rubyNext, ## next rubyOperator, ## operator rubyOperatorAssignment, ## operator_assignment rubyOptionalParameter, ## optional_parameter rubyPair, ## pair rubyParenthesizedStatements, ## parenthesized_statements rubyPattern, ## pattern rubyProgram, ## program rubyRange, ## range rubyRational, ## rational rubyRedo, ## redo rubyRegex, ## regex rubyRescue, ## rescue rubyRescueModifier, ## rescue_modifier rubyRestAssignment, ## rest_assignment rubyRetry, ## retry rubyReturn, ## return rubyRightAssignmentList, ## right_assignment_list rubyScopeResolution, ## scope_resolution rubySetter, ## setter rubySingletonClass, ## singleton_class rubySingletonMethod, ## singleton_method rubySplatArgument, ## splat_argument rubySplatParameter, ## splat_parameter rubyString, ## string rubyStringArray, ## string_array rubySubshell, ## subshell rubySuperclass, ## superclass rubySymbolArray, ## symbol_array rubyThen, ## then rubyUnary, ## unary rubyUndef, ## undef rubyUnless, ## unless rubyUnlessModifier, ## unless_modifier rubyUntil, ## until rubyUntilModifier, ## until_modifier rubyWhen, ## when rubyWhile, ## while rubyWhileModifier, ## while_modifier rubyYield, ## yield rubyExclamationTok, ## ! rubyExclamationEqualTok, ## != rubyExclamationTildeTok, ## !~ rubyQuoteTok, ## " rubyHashLCurlyTok, ## #{ rubyPercentTok, ## % rubyPercentEqualTok, ## %= rubyPercentiLParTok, ## %i( rubyPercentwLParTok, ## %w( rubyAmpersandTok, ## & rubyDoubleAmpersandTok, ## && rubyDoubleAmpersandEqualTok, ## &&= rubyAmpersandDotTok, ## &. rubyAmpersandEqualTok, ## &= rubyLParTok, ## ( rubyRParTok, ## ) rubyAsteriskTok, ## * rubyDoubleAsteriskTok, ## ** rubyDoubleAsteriskEqualTok, ## **= rubyAsteriskEqualTok, ## *= rubyPlusTok, ## + rubyPlusEqualTok, ## += rubyPlusAtTok, ## +@ rubyCommaTok, ## , rubyMinusTok, ## - rubyMinusEqualTok, ## -= rubyMinusGreaterThanTok, ## -> rubyMinusAtTok, ## -@ rubyDotTok, ## . rubyDoubleDotTok, ## .. rubyTripleDotTok, ## ... rubySlashTok, ## / rubySlashEqualTok, ## /= rubyColonTok, ## : rubyColonQuoteTok, ## :" rubyDoubleColonTok, ## :: rubySemicolonTok, ## ; rubyLessThanTok, ## < rubyDoubleLessThanTok, ## << rubyDoubleLessThanEqualTok, ## <<= rubyLessThanEqualTok, ## <= rubyLessThanEqualGreaterThanTok, ## <=> rubyEqualTok, ## = rubyDoubleEqualTok, ## == rubyTripleEqualTok, ## === rubyEqualGreaterThanTok, ## => rubyEqualTildeTok, ## =~ rubyGreaterThanTok, ## > rubyGreaterThanEqualTok, ## >= rubyDoubleGreaterThanTok, ## >> rubyDoubleGreaterThanEqualTok, ## >>= rubyQuestionTok, ## ? rubyBEGINTok, ## BEGIN rubyENDTok, ## END rubyLBrackTok, ## [ rubyLBrackRBrackTok, ## [] rubyLBrackRBrackEqualTok, ## []= rubyRBrackTok, ## ] rubyAccentTok, ## ^ rubyAccentEqualTok, ## ^= rubyBacktickTok, ## ` rubyAliasTok, ## alias rubyAndTok, ## and rubyBeginTok1, ## begin rubyBreakTok, ## break rubyCaseTok, ## case rubyCharacter, ## character rubyClassTok, ## class rubyClassVariable, ## class_variable rubyComment, ## comment rubyComplex, ## complex rubyConstant, ## constant rubyDefTok, ## def rubyDefinedQuestionTok, ## defined? rubyDoTok, ## do rubyElseTok, ## else rubyElsifTok, ## elsif rubyEndTok1, ## end rubyEnsureTok, ## ensure rubyEscapeSequence, ## escape_sequence rubyFalse, ## false rubyFloat, ## float rubyForTok, ## for rubyGlobalVariable, ## global_variable rubyHashKeySymbol, ## hash_key_symbol rubyHeredocBeginning, ## heredoc_beginning rubyHeredocContent, ## heredoc_content rubyHeredocEnd, ## heredoc_end rubyIdentifier, ## identifier rubyIfTok, ## if rubyInTok, ## in rubyInstanceVariable, ## instance_variable rubyInteger, ## integer rubyModuleTok, ## module rubyNextTok, ## next rubyNil, ## nil rubyNotTok, ## not rubyOrTok, ## or rubyRTok, ## r rubyRedoTok, ## redo rubyRescueTok, ## rescue rubyRetryTok, ## retry rubyReturnTok, ## return rubySelf, ## self rubySimpleSymbol, ## simple_symbol rubyStringContent, ## string_content rubySuper, ## super rubyThenTok, ## then rubyTrue, ## true rubyUndefTok, ## undef rubyUninterpreted, ## uninterpreted rubyUnlessTok, ## unless rubyUntilTok, ## until rubyWhenTok, ## when rubyWhileTok, ## while rubyYieldTok, ## yield rubyLCurlyTok, ## { rubyPipeTok, ## | rubyPipeEqualTok, ## |= rubyDoublePipeTok, ## || rubyDoublePipeEqualTok, ## ||= rubyRCurlyTok, ## } rubyTildeTok, ## ~ rubySyntaxError ## Tree-sitter parser syntax error
RubyExternalTok = enum rubyExtern_line_break, ## _line_break rubyExternSimple_symbol, ## simple_symbol rubyExtern_string_start, ## _string_start rubyExtern_symbol_start, ## _symbol_start rubyExtern_subshell_start, ## _subshell_start rubyExtern_regex_start, ## _regex_start rubyExtern_string_array_start, ## _string_array_start rubyExtern_symbol_array_start, ## _symbol_array_start rubyExtern_heredoc_body_start, ## _heredoc_body_start rubyExternString_content, ## string_content rubyExternHeredoc_content, ## heredoc_content rubyExtern_string_end, ## _string_end rubyExternHeredoc_end, ## heredoc_end rubyExternHeredoc_beginning, ## heredoc_beginning rubyExtern_block_ampersand, ## _block_ampersand rubyExtern_splat_star, ## _splat_star rubyExtern_unary_minus, ## _unary_minus rubyExtern_binary_minus, ## _binary_minus rubyExtern_binary_star, ## _binary_star rubyExtern_singleton_class_left_angle_left_langle, ## _singleton_class_left_angle_left_langle rubyExternHash_key_symbol, ## hash_key_symbol rubyExtern_hash_splat_star_star, ## _hash_splat_star_star rubyExtern_binary_star_star, ## _binary_star_star rubyExtern_element_reference_bracket ## _element_reference_bracket
TsRubyNode = distinct TSNode
RubyParser = distinct PtsParser
RubyNode = HtsNode[TsRubyNode, RubyNodeKind]
Procs
proc kind(node: TsRubyNode): RubyNodeKind {...}{.noSideEffect, raises: [Exception], tags: [RootEffect].}
proc tsNodeType(node: TsRubyNode): string {...}{.raises: [], tags: [].}
proc newTsRubyParser(): RubyParser {...}{.raises: [], tags: [].}
proc parseString(parser: RubyParser; str: string): TsRubyNode {...}{.raises: [], tags: [].}
proc parseTsRubyString(str: string): TsRubyNode {...}{.raises: [], tags: [].}
proc treeReprTsRuby(str: string; unnamed: bool = false): string {...}{. raises: [ValueError, Exception, NilArgumentError], tags: [RootEffect].}
proc toHtsNode(node: TsRubyNode; str: ptr string): HtsNode[TsRubyNode, RubyNodeKind] {...}{.raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc toHtsTree(node: TsRubyNode; str: ptr string): RubyNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseRubyString(str: ptr string; unnamed: bool = false): RubyNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseRubyString(str: string; unnamed: bool = false): RubyNode {...}{. raises: [NilArgumentError, Exception], tags: [RootEffect].}
Funcs
func isNil(node: TsRubyNode): bool {...}{.raises: [], tags: [].}
func len(node: TsRubyNode; unnamed: bool = false): int {...}{.raises: [], tags: [].}
func has(node: TsRubyNode; idx: int; unnamed: bool = false): bool {...}{.raises: [], tags: [].}
func `$`(node: TsRubyNode): string {...}{.raises: [Exception], tags: [RootEffect].}
func `[]`(node: TsRubyNode; idx: int; kind: RubyNodeKind | set[RubyNodeKind]): TsRubyNode