code: def parse_directive_location(lexer: Lexer) -> NameNode:
      
      start = lexer.token
      name = parse_name(lexer)
      if name.value in DirectiveLocation.__members__:
          return name
      raise unexpected(lexer, start)
docs: DirectiveLocation