pslang/libs/ast/include/pslang/ast/identifier.hpp

27 lines
578 B
C++

#pragma once
#include <pslang/ast/location.hpp>
#include <pslang/types/type_fwd.hpp>
#include <string>
namespace pslang::ast
{
struct variable_base;
struct variable_declaration;
struct function_definition;
struct foreign_function_declaration;
struct identifier
{
std::string name;
ast::location location;
variable_declaration * constant_node = nullptr;
variable_base * variable_node = nullptr;
function_definition * function_node = nullptr;
foreign_function_declaration * foreign_function_node = nullptr;
types::type_ptr inferred_type = nullptr;
};
}