vb6parse 1.0.1

vb6parse is a library for parsing and analyzing VB6 code, from projects, to controls, to modules, and forms.
Documentation
---
source: src/syntax/library/functions/string/replace.rs
expression: tree
---
root:
  kind: Root
  children:
    - kind: Newline
      text: "\n"
    - kind: DimStatement
      children:
        - kind: DimKeyword
          text: Dim
        - kind: Whitespace
          text: " "
        - kind: Identifier
          text: sanitized
        - kind: Whitespace
          text: " "
        - kind: AsKeyword
          text: As
        - kind: Whitespace
          text: " "
        - kind: StringKeyword
          text: String
        - kind: Newline
          text: "\n"
    - kind: AssignmentStatement
      children:
        - kind: IdentifierExpression
          children:
            - kind: Identifier
              text: sanitized
        - kind: Whitespace
          text: " "
        - kind: EqualityOperator
          text: "="
        - kind: Whitespace
          text: " "
        - kind: CallExpression
          children:
            - kind: Identifier
              text: Replace
            - kind: LeftParenthesis
              text: (
            - kind: ArgumentList
              children:
                - kind: Argument
                  children:
                    - kind: IdentifierExpression
                      children:
                        - kind: InputKeyword
                          text: input
                - kind: Comma
                  text: ","
                - kind: Whitespace
                  text: " "
                - kind: Argument
                  children:
                    - kind: IdentifierExpression
                      children:
                        - kind: Identifier
                          text: invalidChar
                - kind: Comma
                  text: ","
                - kind: Whitespace
                  text: " "
                - kind: Argument
                  children:
                    - kind: StringLiteralExpression
                      children:
                        - kind: StringLiteral
                          text: "\"_\""
            - kind: RightParenthesis
              text: )
        - kind: Newline
          text: "\n"
    - kind: SelectCaseStatement
      children:
        - kind: SelectKeyword
          text: Select
        - kind: Whitespace
          text: " "
        - kind: CaseKeyword
          text: Case
        - kind: Whitespace
          text: " "
        - kind: CallExpression
          children:
            - kind: LenKeyword
              text: Len
            - kind: LeftParenthesis
              text: (
            - kind: ArgumentList
              children:
                - kind: Argument
                  children:
                    - kind: IdentifierExpression
                      children:
                        - kind: Identifier
                          text: sanitized
            - kind: RightParenthesis
              text: )
        - kind: Newline
          text: "\n"
        - kind: Whitespace
          text: "    "
        - kind: CaseClause
          children:
            - kind: CaseKeyword
              text: Case
            - kind: Whitespace
              text: " "
            - kind: IntegerLiteral
              text: "0"
            - kind: Newline
              text: "\n"
            - kind: StatementList
              children:
                - kind: Whitespace
                  text: "        "
                - kind: AssignmentStatement
                  children:
                    - kind: IdentifierExpression
                      children:
                        - kind: Identifier
                          text: result
                    - kind: Whitespace
                      text: " "
                    - kind: EqualityOperator
                      text: "="
                    - kind: Whitespace
                      text: " "
                    - kind: StringLiteralExpression
                      children:
                        - kind: StringLiteral
                          text: "\"Empty\""
                    - kind: Newline
                      text: "\n"
                - kind: Whitespace
                  text: "    "
        - kind: CaseElseClause
          children:
            - kind: CaseKeyword
              text: Case
            - kind: Whitespace
              text: " "
            - kind: ElseKeyword
              text: Else
            - kind: Newline
              text: "\n"
            - kind: StatementList
              children:
                - kind: Whitespace
                  text: "        "
                - kind: AssignmentStatement
                  children:
                    - kind: IdentifierExpression
                      children:
                        - kind: Identifier
                          text: result
                    - kind: Whitespace
                      text: " "
                    - kind: EqualityOperator
                      text: "="
                    - kind: Whitespace
                      text: " "
                    - kind: IdentifierExpression
                      children:
                        - kind: Identifier
                          text: sanitized
                    - kind: Newline
                      text: "\n"
        - kind: EndKeyword
          text: End
        - kind: Whitespace
          text: " "
        - kind: SelectKeyword
          text: Select
        - kind: Newline
          text: "\n"