================================================================================
Match Values
================================================================================

match x {
  1 -> {
    true
  }
  2 -> false
}

--------------------------------------------------------------------------------

(root
  (statement
    (statement_kind
      (match
        (expression
          (identifier))
        (match_pattern
          (value
            (integer)))
        (statement
          (statement_kind
            (block
              (statement
                (statement_kind
                  (expression
                    (value
                      (boolean))))))))
        (match_pattern
          (value
            (integer)))
        (statement
          (statement_kind
            (expression
              (value
                (boolean)))))))))

================================================================================
Match Enum
================================================================================

match foobar {
  FooBar::Foo -> true
  FooBar::Bar -> false
}

--------------------------------------------------------------------------------

(root
  (statement
    (statement_kind
      (match
        (expression
          (identifier))
        (match_pattern
          (enum_pattern
            (identifier)
            (identifier)))
        (statement
          (statement_kind
            (expression
              (value
                (boolean)))))
        (match_pattern
          (enum_pattern
            (identifier)
            (identifier)))
        (statement
          (statement_kind
            (expression
              (value
                (boolean)))))))))
