nix_wrapper

Types

NixNodeKind = enum
  nixExpression,            ## _expression
  nixApp,                   ## app
  nixAssert,                ## assert
  nixAttrpath,              ## attrpath
  nixAttrsInherited,        ## attrs_inherited
  nixAttrsInheritedFrom,    ## attrs_inherited_from
  nixAttrset,               ## attrset
  nixBinary,                ## binary
  nixBind,                  ## bind
  nixFormal,                ## formal
  nixFormals,               ## formals
  nixFunction,              ## function
  nixIf,                    ## if
  nixIndentedString,        ## indented_string
  nixInherit,               ## inherit
  nixInheritFrom,           ## inherit_from
  nixInterpolation,         ## interpolation
  nixLet,                   ## let
  nixLetAttrset,            ## let_attrset
  nixList,                  ## list
  nixParenthesized,         ## parenthesized
  nixRecAttrset,            ## rec_attrset
  nixSelect,                ## select
  nixSourceExpression,      ## source_expression
  nixString,                ## string
  nixUnary,                 ## unary
  nixWith,                  ## with
  nixExclamationTok,        ## !
  nixExclamationEqualTok,   ## !=
  nixQuoteTok,              ## "
  nixDollarLCurlyTok,       ## ${
  nixDoubleAmpersandTok,    ## &&
  nixDoubleApostropheTok,   ## ''
  nixLParTok,               ## (
  nixRParTok,               ## )
  nixAsteriskTok,           ## *
  nixPlusTok,               ## +
  nixDoublePlusTok,         ## ++
  nixCommaTok,              ## ,
  nixMinusTok,              ## -
  nixMinusGreaterThanTok,   ## ->
  nixDotTok,                ## .
  nixSlashTok,              ## /
  nixDoubleSlashTok,        ## //
  nixColonTok,              ## :
  nixSemicolonTok,          ## ;
  nixLessThanTok,           ## <
  nixLessThanEqualTok,      ## <=
  nixEqualTok,              ## =
  nixDoubleEqualTok,        ## ==
  nixGreaterThanTok,        ## >
  nixGreaterThanEqualTok,   ## >=
  nixQuestionTok,           ## ?
  nixAtTok,                 ## @
  nixLBrackTok,             ## [
  nixRBrackTok,             ## ]
  nixAssertTok,             ## assert
  nixAttrIdentifier,        ## attr_identifier
  nixComment,               ## comment
  nixEllipses,              ## ellipses
  nixElseTok,               ## else
  nixEscapeSequence,        ## escape_sequence
  nixFloat,                 ## float
  nixHpath,                 ## hpath
  nixIdentifier,            ## identifier
  nixIfTok,                 ## if
  nixInTok,                 ## in
  nixInheritTok,            ## inherit
  nixInteger,               ## integer
  nixLetTok,                ## let
  nixOrTok,                 ## or
  nixPath,                  ## path
  nixRecTok,                ## rec
  nixSpath,                 ## spath
  nixThenTok,               ## then
  nixUri,                   ## uri
  nixWithTok,               ## with
  nixLCurlyTok,             ## {
  nixDoublePipeTok,         ## ||
  nixRCurlyTok,             ## }
  nixSyntaxError             ## Tree-sitter parser syntax error
NixExternalTok = enum
  nixExtern_str_content,    ## _str_content
  nixExtern_ind_str_content, ## _ind_str_content
  nixExternEscape_sequence, ## escape_sequence
  nixExternInd_escape_sequence ## ind_escape_sequence
TsNixNode = distinct TSNode
NixParser = distinct PtsParser
NixNode = HtsNode[TsNixNode, NixNodeKind]

Procs

proc kind(node: TsNixNode): NixNodeKind {...}{.noSideEffect, raises: [Exception],
    tags: [RootEffect].}
proc tsNodeType(node: TsNixNode): string {...}{.raises: [], tags: [].}
proc newTsNixParser(): NixParser {...}{.raises: [], tags: [].}
proc parseString(parser: NixParser; str: string): TsNixNode {...}{.raises: [],
    tags: [].}
proc parseTsNixString(str: string): TsNixNode {...}{.raises: [], tags: [].}
proc treeReprTsNix(str: string; unnamed: bool = false): string {...}{.
    raises: [ValueError, Exception, NilArgumentError], tags: [RootEffect].}
proc toHtsNode(node: TsNixNode; str: ptr string): HtsNode[TsNixNode, NixNodeKind] {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc toHtsTree(node: TsNixNode; str: ptr string): NixNode {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseNixString(str: ptr string; unnamed: bool = false): NixNode {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}
proc parseNixString(str: string; unnamed: bool = false): NixNode {...}{.
    raises: [NilArgumentError, Exception], tags: [RootEffect].}

Funcs

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