code: def parse_variable_definition(lexer: Lexer) -> VariableDefinitionNode:
      
      start = lexer.token
      return VariableDefinitionNode(
          variable=parse_variable(lexer),
          type=expect_token(lexer, TokenKind.COLON) and parse_type_reference(lexer),
          default_value=parse_value_literal(lexer, True)
          if expect_optional_token(lexer, TokenKind.EQUALS)
          else None,
          directives=parse_directives(lexer, True),
          loc=loc(lexer, start),
      )
docs: VariableDefinition: Variable: Type DefaultValue? Directives[Const]?