Skip to content

Entity

class Entity

Represents an entity in the source code, which can be a constant, object, macro, or function.

DEFINITION
class Entity;

constructor Entity

DEFINITION
Entity ( ObjectFile * owner,
const Token & name,
const std::shared_ptr< StructuredValue > & definition );
PARAMETERDESCRIPTION
owner
name
definition

constructor Entity

DEFINITION
Entity ( ObjectFile * owner,
const Token & name,
Visibility  visibility,
bool  default_only );
PARAMETERDESCRIPTION
owner
name
visibility
default_only

destructor ~Entityvirtual

DEFINITION
virtual ~Entity ( );

method as_macro

DEFINITION
Macro * as_macro ( );
RETURNSDESCRIPTION
Macro *

method as_object

DEFINITION
Object * as_object ( );
RETURNSDESCRIPTION
Object *

method check_unresolvedconst

DEFINITION
bool  check_unresolved ( Unresolved & unresolved ) const;
PARAMETERDESCRIPTION
unresolved
RETURNSDESCRIPTION
bool

method evaluate

DEFINITION
void  evaluate ( );

method evaluate

DEFINITION
EvaluationResult  evaluate ( EvaluationContext::EvaluationType  type );
PARAMETERDESCRIPTION
type
RETURNSDESCRIPTION
EvaluationResult

method evaluate_innervirtual

DEFINITION
virtual void  evaluate_inner ( EvaluationContext & context ) = 0;
PARAMETERDESCRIPTION
context

method evaluation_contextvirtual

DEFINITION
virtual EvaluationContext  evaluation_context ( EvaluationResult & result );
PARAMETERDESCRIPTION
result
RETURNSDESCRIPTION
EvaluationContext

method evaluation_contextvirtual

DEFINITION
virtual EvaluationContext  evaluation_context ( EvaluationResult & result,
EvaluationContext::EvaluationType  type );
PARAMETERDESCRIPTION
result
type
RETURNSDESCRIPTION
EvaluationContext

method is_default_onlyconst

DEFINITION
bool  is_default_only ( ) const;
RETURNSDESCRIPTION
bool

method is_macro

DEFINITION
bool  is_macro ( );
RETURNSDESCRIPTION
bool

method is_object

DEFINITION
bool  is_object ( );
RETURNSDESCRIPTION
bool

method is_publicconst

DEFINITION
bool  is_public ( ) const;
RETURNSDESCRIPTION
bool

method process_result

DEFINITION
void  process_result ( EvaluationResult & result );
PARAMETERDESCRIPTION
result

method resolve_labels

DEFINITION
void  resolve_labels ( );

method serialize_entityconst

DEFINITION
void  serialize_entity ( std::ostream & stream ) const;
PARAMETERDESCRIPTION
stream

method set_owner

DEFINITION
void  set_owner ( ObjectFile * new_owner );
PARAMETERDESCRIPTION
new_owner

member environment

DEFINITION
std::shared_ptr< Environment >  environment;

member location

DEFINITION
Location  location;

member name

DEFINITION
Symbol  name;

member owner

DEFINITION
ObjectFile * owner;

member referenced_objects

DEFINITION
std::unordered_set< Object * >  referenced_objects;

member unresolved_functions

DEFINITION
std::unordered_set< Symbol >  unresolved_functions;

member unresolved_macros

DEFINITION
std::unordered_set< Symbol >  unresolved_macros;

member unresolved_variables

DEFINITION
std::unordered_set< Symbol >  unresolved_variables;

member visibility

DEFINITION
Visibility  visibility;