Skip to content

ObjectFile

class ObjectFile

DEFINITION
class ObjectFile;

class Constant

DEFINITION
class Constant;

constructor Constant

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

constructor Constant

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

method evaluate_innervirtual

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

method serializeconst

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

member value

DEFINITION
Expression  value;

constructor ObjectFile

DEFINITION
ObjectFile ( );

method add_constant

DEFINITION
void  add_constant ( std::unique_ptr< Constant >  constant );
PARAMETERDESCRIPTION
constant

method add_function

DEFINITION
void  add_function ( std::unique_ptr< Function >  function );
PARAMETERDESCRIPTION
function

method add_macro

DEFINITION
void  add_macro ( std::unique_ptr< Macro >  macro );
PARAMETERDESCRIPTION
macro

method add_object

DEFINITION
void  add_object ( std::unique_ptr< Object >  object );
PARAMETERDESCRIPTION
object

method add_object_file

DEFINITION
void  add_object_file ( const std::shared_ptr< ObjectFile > & file );
PARAMETERDESCRIPTION
file

method all_objectsconst

DEFINITION
std::vector< Object * >  all_objects ( ) const;
RETURNSDESCRIPTION
std::vector< Object * >

method check_unresolvedconst

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

method collect_constantsconst

DEFINITION
void  collect_constants ( std::unordered_set< const Constant * > & set,
bool  public_only = false ) const;
PARAMETERDESCRIPTION
set
public_only

method collect_explicitly_used_objectsconst

DEFINITION
void  collect_explicitly_used_objects ( std::unordered_set< Object * > & set ) const;
PARAMETERDESCRIPTION
set

method constantconst

DEFINITION
const Constant * constant ( Symbol  name ) const;
PARAMETERDESCRIPTION
name
RETURNSDESCRIPTION
const Constant *

method create_object

DEFINITION
Object * create_object ( Symbol  section_name,
Visibility  visibility,
bool  default_only,
const Token & object_name );
PARAMETERDESCRIPTION
section_name
visibility
default_only
object_name
RETURNSDESCRIPTION
Object *

method environmentconst

DEFINITION
std::shared_ptr< Environment >  environment ( Visibility  visibility ) const;
PARAMETERDESCRIPTION
visibility
RETURNSDESCRIPTION
std::shared_ptr< Environment >

method evaluate

DEFINITION
void  evaluate ( );

method import

DEFINITION
void  import ( ObjectFile * library );
PARAMETERDESCRIPTION
library

method macro

DEFINITION
Macro * macro ( Symbol  macro_name );
PARAMETERDESCRIPTION
macro_name
RETURNSDESCRIPTION
Macro *

method mark_used

DEFINITION
void  mark_used ( Symbol  name );
PARAMETERDESCRIPTION
name

method mark_used

DEFINITION
void  mark_used ( Object * object );
PARAMETERDESCRIPTION
object

method objectconst

DEFINITION
const Object * object ( Symbol  object_name ) const;
PARAMETERDESCRIPTION
object_name
RETURNSDESCRIPTION
const Object *

method pin

DEFINITION
void  pin ( Symbol  name,
const Expression & address );
PARAMETERDESCRIPTION
name
address

method public_entitiesconst

DEFINITION
UsedEntities  public_entities ( ) const;
RETURNSDESCRIPTION
UsedEntities

method remove_private_constants

DEFINITION
void  remove_private_constants ( );

method resolve_defaults

DEFINITION
void  resolve_defaults ( );

method serializeconst

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

method set_target

DEFINITION
void  set_target ( const Target * new_target );
PARAMETERDESCRIPTION
new_target

member format_version_majorstatic

DEFINITION
static const unsigned int  format_version_major;

member format_version_minorstatic

DEFINITION
static const unsigned int  format_version_minor;

member name

DEFINITION
Symbol  name;

member private_environment

DEFINITION
std::shared_ptr< Environment >  private_environment;

member public_environment

DEFINITION
std::shared_ptr< Environment >  public_environment;

member target

DEFINITION
const Target * target;

class Constant

DEFINITION
class Constant;

constructor Constant

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

constructor Constant

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

method evaluate_innervirtual

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

method serializeconst

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

member value

DEFINITION
Expression  value;