brush-parser 0.4.0

POSIX/bash shell tokenizer and parsers (used by brush-shell)
Documentation
---
source: brush-parser/src/tokenizer.rs
expression: "test_tokenizer(r\"cat <<HERE\nHERE\n\")?"
---
TokenizerResult(
  input: "cat <<HERE\nHERE\n",
  result: [
    Word("cat", SourceSpan(
      start: SourcePosition(
        index: 0,
        line: 1,
        column: 1,
      ),
      end: SourcePosition(
        index: 3,
        line: 1,
        column: 4,
      ),
    )),
    Operator("<<", SourceSpan(
      start: SourcePosition(
        index: 4,
        line: 1,
        column: 5,
      ),
      end: SourcePosition(
        index: 6,
        line: 1,
        column: 7,
      ),
    )),
    Word("HERE", SourceSpan(
      start: SourcePosition(
        index: 6,
        line: 1,
        column: 7,
      ),
      end: SourcePosition(
        index: 10,
        line: 1,
        column: 11,
      ),
    )),
    Word("", SourceSpan(
      start: SourcePosition(
        index: 11,
        line: 2,
        column: 1,
      ),
      end: SourcePosition(
        index: 16,
        line: 3,
        column: 1,
      ),
    )),
    Word("HERE", SourceSpan(
      start: SourcePosition(
        index: 16,
        line: 3,
        column: 1,
      ),
      end: SourcePosition(
        index: 16,
        line: 3,
        column: 1,
      ),
    )),
    Operator("\n", SourceSpan(
      start: SourcePosition(
        index: 10,
        line: 1,
        column: 11,
      ),
      end: SourcePosition(
        index: 11,
        line: 2,
        column: 1,
      ),
    )),
  ],
)