rnix 0.10.2

A Nix parser written in Rust
Documentation
NODE_ROOT 0..95 {
  NODE_ATTR_SET 0..95 {
    TOKEN_CURLY_B_OPEN("{") 0..1
    NODE_KEY_VALUE 1..5 {
      NODE_KEY 1..2 {
        NODE_IDENT 1..2 {
          TOKEN_IDENT("a") 1..2
        }
      }
      TOKEN_ASSIGN("=") 2..3
      NODE_LITERAL 3..4 {
        TOKEN_INTEGER("1") 3..4
      }
      TOKEN_SEMICOLON(";") 4..5
    }
    NODE_INHERIT 5..17 {
      TOKEN_INHERIT("inherit") 5..12
      TOKEN_WHITESPACE(" ") 12..13
      NODE_IDENT 13..14 {
        TOKEN_IDENT("b") 13..14
      }
      TOKEN_WHITESPACE(" ") 14..15
      NODE_IDENT 15..16 {
        TOKEN_IDENT("c") 15..16
      }
      TOKEN_SEMICOLON(";") 16..17
    }
    NODE_INHERIT 17..35 {
      TOKEN_INHERIT("inherit") 17..24
      TOKEN_WHITESPACE(" ") 24..25
      NODE_INHERIT_FROM 25..30 {
        TOKEN_PAREN_OPEN("(") 25..26
        NODE_IDENT 26..29 {
          TOKEN_IDENT("set") 26..29
        }
        TOKEN_PAREN_CLOSE(")") 29..30
      }
      TOKEN_WHITESPACE(" ") 30..31
      NODE_IDENT 31..32 {
        TOKEN_IDENT("d") 31..32
      }
      TOKEN_WHITESPACE(" ") 32..33
      NODE_IDENT 33..34 {
        TOKEN_IDENT("e") 33..34
      }
      TOKEN_SEMICOLON(";") 34..35
    }
    TOKEN_WHITESPACE(" ") 35..36
    NODE_INHERIT 36..51 {
      TOKEN_INHERIT("inherit") 36..43
      TOKEN_WHITESPACE(" ") 43..44
      NODE_DYNAMIC 44..50 {
        TOKEN_DYNAMIC_START("${") 44..46
        NODE_STRING 46..49 {
          TOKEN_STRING_START("\"") 46..47
          TOKEN_STRING_CONTENT("f") 47..48
          TOKEN_STRING_END("\"") 48..49
        }
        TOKEN_DYNAMIC_END("}") 49..50
      }
      TOKEN_SEMICOLON(";") 50..51
    }
    TOKEN_WHITESPACE(" ") 51..52
    NODE_INHERIT 52..66 {
      TOKEN_INHERIT("inherit") 52..59
      TOKEN_WHITESPACE(" ") 59..60
      NODE_STRING 60..65 {
        TOKEN_STRING_START("\"") 60..61
        TOKEN_STRING_CONTENT("foo") 61..64
        TOKEN_STRING_END("\"") 64..65
      }
      TOKEN_SEMICOLON(";") 65..66
    }
    TOKEN_WHITESPACE(" ") 66..67
    NODE_INHERIT 67..85 {
      TOKEN_INHERIT("inherit") 67..74
      TOKEN_WHITESPACE(" ") 74..75
      NODE_INHERIT_FROM 75..78 {
        TOKEN_PAREN_OPEN("(") 75..76
        NODE_IDENT 76..77 {
          TOKEN_IDENT("a") 76..77
        }
        TOKEN_PAREN_CLOSE(")") 77..78
      }
      TOKEN_WHITESPACE(" ") 78..79
      NODE_STRING 79..84 {
        TOKEN_STRING_START("\"") 79..80
        TOKEN_STRING_CONTENT("bar") 80..83
        TOKEN_STRING_END("\"") 83..84
      }
      TOKEN_SEMICOLON(";") 84..85
    }
    TOKEN_WHITESPACE(" ") 85..86
    NODE_INHERIT 86..94 {
      TOKEN_INHERIT("inherit") 86..93
      TOKEN_SEMICOLON(";") 93..94
    }
    TOKEN_CURLY_B_CLOSE("}") 94..95
  }
}