Otawa  0.10
otawa::AbstractIdentifier Class Reference

Represents a unique identifier used by the annotation system. More...

#include <otawa/prop/AbstractIdentifier.h>

Inheritance diagram for otawa::AbstractIdentifier:
otawa::PropList otawa::Identifier< AbstractIdentifier * > otawa::Identifier< AbstractParamProcessor * > otawa::Identifier< bool > otawa::Identifier< dfa::BitSet * > otawa::Identifier< display::kind_t > otawa::Identifier< Domain * > otawa::Identifier< double > otawa::Identifier< elm::CString > otawa::Identifier< elm::genstruct::DLList * > otawa::Identifier< elm::io::elm::io::Output * > otawa::Identifier< elm::io::elm::io::OutStream * > otawa::Identifier< elm::Pair > otawa::Identifier< elm::String > otawa::Identifier< elm::sys::Path > otawa::Identifier< elm::system::elm::sys::Path > otawa::Identifier< elm::system::time_t > otawa::Identifier< int > otawa::Identifier< log_level_t > otawa::Identifier< otawa::AbstractParamIdentifier * > otawa::Identifier< otawa::arm::Info * > otawa::Identifier< otawa::ast::AST * > otawa::Identifier< otawa::BasicBlock * > otawa::Identifier< otawa::ccg::Collection * > otawa::Identifier< otawa::ccg::Node * > otawa::Identifier< otawa::CEClass * > otawa::Identifier< otawa::CFG * > otawa::Identifier< otawa::CFGInfo * > otawa::Identifier< otawa::display::ILPSystemAddon * > otawa::Identifier< otawa::Microprocessor< ExeNode > * > otawa::Identifier< otawa::PCG * > otawa::Identifier< otawa::Progress * > otawa::Identifier< otawa::PropList * > otawa::Identifier< otawa::StatInfo * > otawa::Identifier< otawa::Symbol * > otawa::Identifier< otawa::tsim::TreePath< otawa::BasicBlock *, otawa::tsim::BBPath * > * > otawa::Identifier< Processor * > otawa::Identifier< T * > otawa::Identifier< typename FixPoint::FixPointState * > otawa::Identifier< typename otawa::dfa::hai::DefaultFixPoint::FixPointState * > otawa::Identifier< typename otawa::dfa::hai::FirstUnrollingFixPoint::FixPointState * > otawa::Identifier< typename otawa::dfa::hai::WideningFixPoint::FixPointState * > otawa::Identifier< typename P::Domain * > otawa::Identifier< typename Problem::Domain * > otawa::AbstractAccessor otawa::AbstractParamProcessor otawa::Identifier< T >

Public Member Functions

 AbstractIdentifier (void)
 Build an anonymous identifier. More...
 
 AbstractIdentifier (cstring name)
 Build a new identifier. More...
 
 AbstractIdentifier (cstring name, Property *prop, VarArg &args)
 Build an identifier with the given name and properties read from the given arguments that must be a list of Property * pointer (1) ended by a null identifier pointer and (2) and will be released by the current identifier. More...
 
virtual ~AbstractIdentifier (void)
 
const string name (void) const
 Get the string name of the identifier. More...
 
void print (elm::io::Output &out) const
 Print the identifier. More...
 
virtual void print (elm::io::Output &output, const Property *prop) const
 Print the value of the given property (accordint the property matches the given identifier). More...
 
void print (elm::io::Output &output, const Property &prop) const
 
virtual void printFormatted (io::Output &out, const Property *prop) const
 Print the value of the given property in a formatted way, that is, possibly to perform re-scanning after. More...
 
void printFormatted (elm::io::Output &output, const Property &prop) const
 
virtual const Typetype (void) const
 Get the identifier of data linked with this property. More...
 
virtual void fromString (PropList &props, const string &str) const
 Get value of an identifier from a string and store it in the given property list. More...
 
virtual bool equals (const Property *prop1, const Property *prop2) const
 Test if two properties are equal. More...
 
virtual Propertycopy (Property &prop) const
 Build a copy of the given property. More...
 
Propertycopy (Property *prop) const
 
virtual void serialize (Property *prop, elm::serial2::Serializer &serializer)
 Serialize the workspace to the current serializer. More...
 
virtual Propertyunserialize (elm::serial2::Unserializer &unserializer)
 Unserialize the workspace to the current unserializer. More...
 
PropertygetProp (const AbstractIdentifier *id) const
 Find a property by its identifier. More...
 
void setProp (Property *prop)
 Set the property in the property list removing any double. More...
 
void setProp (const AbstractIdentifier *id)
 
void removeProp (const AbstractIdentifier *id)
 Remove a property matching the given identifier. More...
 
void removeProp (const AbstractIdentifier &id)
 
PropertyextractProp (const AbstractIdentifier *id)
 Remove a property matching the given identifier and return it. More...
 
PropertyextractProp (const AbstractIdentifier &id)
 Remove a property matching the given identifier and return it. More...
 
void addProp (Property *prop)
 Add property to the list without checking of duplication. More...
 
void removeAllProp (const AbstractIdentifier *id)
 Remove all the properties matching the given identifier. More...
 
bool hasProp (const AbstractIdentifier &id) const
 Test if the property list contains a property matching the given identifier. More...
 
void clearProps (void)
 Remove all properties from the list. More...
 
void addProps (const PropList &props)
 Add all properties from the given property list, in a reverse order. More...
 

Static Public Member Functions

static AbstractIdentifierfind (const string &name)
 Find an abstract identifier by its name. More...
 

Static Public Attributes

static const PropList EMPTY
 This is an empty proplist for convenience. More...
 

Protected Member Functions

void initProps (Property *prop, VarArg &args)
 Add the properties found in the arguments (list of Property * ended by null) to the identifier properties. More...
 

Private Member Functions

void initialize (void)
 For internal use only. More...
 

Private Attributes

string nam
 

Friends

class elm::Initializer< AbstractIdentifier >
 

Detailed Description

Represents a unique identifier used by the annotation system.

Identifier pointers may be compared for testing equality.

Information on identifiers

To have nice display of identifier and their value, one can provide to the OTAWA identifier system informations for human reading. As an identifier is also a property list, one may attach properties with the following identifier: otawa::IDENTIFIER_LABEL – a short label to display in front of the property value, otawa::IDENTIFIER_DESC – a more precise description of the identifier.

Both information may be set using some dedicated macros:

Identifier<int> MY_ID("MY_ID", 111);
SET_LABEL(MY_ID, "my identifier");
SET_DESC(MY_ID, "this is my identifier !");

Constructor & Destructor Documentation

otawa::AbstractIdentifier::AbstractIdentifier ( void  )

Build an anonymous identifier.

otawa::AbstractIdentifier::AbstractIdentifier ( cstring  name)

Build a new identifier.

Only one identifier may exists in the OTAWA with a given name. If there is a name clash, the framework will immediatelly be stopped.

Parameters
nameName of the identifier.
parentParent namespace.

References nam, and TRACE.

otawa::AbstractIdentifier::AbstractIdentifier ( cstring  name,
Property prop,
VarArg args 
)

Build an identifier with the given name and properties read from the given arguments that must be a list of Property * pointer (1) ended by a null identifier pointer and (2) and will be released by the current identifier.

Parameters
nameName of the identifier ("" for anonymous)
propFirst property.
argsArguments to derive identifier properties.

References initProps().

virtual otawa::AbstractIdentifier::~AbstractIdentifier ( void  )
inlinevirtual

Member Function Documentation

void otawa::PropList::clearProps ( void  )
inherited
Property * otawa::AbstractIdentifier::copy ( Property prop) const
virtual

Build a copy of the given property.

Parameters
propProperty to copy.
Returns
Copy of the property.

Reimplemented in otawa::Identifier< T >, otawa::Identifier< otawa::ccg::Node * >, otawa::Identifier< typename Problem::Domain * >, otawa::Identifier< dfa::BitSet * >, otawa::Identifier< double >, otawa::Identifier< otawa::CFG * >, otawa::Identifier< otawa::ast::AST * >, otawa::Identifier< elm::system::elm::sys::Path >, otawa::Identifier< otawa::Microprocessor< ExeNode > * >, otawa::Identifier< otawa::ccg::Collection * >, otawa::Identifier< Domain * >, otawa::Identifier< AbstractParamProcessor * >, otawa::Identifier< otawa::CFGInfo * >, otawa::Identifier< otawa::StatInfo * >, otawa::Identifier< int >, otawa::Identifier< T * >, otawa::Identifier< elm::sys::Path >, otawa::Identifier< otawa::PropList * >, otawa::Identifier< elm::genstruct::DLList * >, otawa::Identifier< elm::system::time_t >, otawa::Identifier< display::kind_t >, otawa::Identifier< typename P::Domain * >, otawa::Identifier< typename otawa::dfa::hai::FirstUnrollingFixPoint::FixPointState * >, otawa::Identifier< otawa::PCG * >, otawa::Identifier< otawa::BasicBlock * >, otawa::Identifier< elm::String >, otawa::Identifier< Processor * >, otawa::Identifier< otawa::tsim::TreePath< otawa::BasicBlock *, otawa::tsim::BBPath * > * >, otawa::Identifier< log_level_t >, otawa::Identifier< otawa::CEClass * >, otawa::Identifier< elm::io::elm::io::OutStream * >, otawa::Identifier< bool >, otawa::Identifier< otawa::AbstractParamIdentifier * >, otawa::Identifier< typename otawa::dfa::hai::WideningFixPoint::FixPointState * >, otawa::Identifier< elm::io::elm::io::Output * >, otawa::Identifier< otawa::Progress * >, otawa::Identifier< elm::CString >, otawa::Identifier< typename otawa::dfa::hai::DefaultFixPoint::FixPointState * >, otawa::Identifier< typename FixPoint::FixPointState * >, otawa::Identifier< otawa::Symbol * >, otawa::Identifier< otawa::display::ILPSystemAddon * >, otawa::Identifier< AbstractIdentifier * >, otawa::Identifier< elm::Pair >, and otawa::Identifier< otawa::arm::Info * >.

Property* otawa::AbstractIdentifier::copy ( Property prop) const
inline

References copy().

Referenced by copy().

bool otawa::AbstractIdentifier::equals ( const Property prop1,
const Property prop2 
) const
virtual

Test if two properties are equal.

Parameters
prop1First property.
prop2Second property.
Returns
True if they are equal, false else.
Property * otawa::PropList::extractProp ( const AbstractIdentifier id)
inherited

Remove a property matching the given identifier and return it.

Caller is responsible of the management of the obtained property.

Parameters
idIdentifier of the property to extract.

References otawa::Property::_next, and otawa::Property::next().

Referenced by otawa::script::Script::makeConfig().

Property * otawa::PropList::extractProp ( const AbstractIdentifier id)
inlineinherited

Remove a property matching the given identifier and return it.

Caller is responsible of the management of the obtained property.

Parameters
idIdentifier of the property to extract.

References otawa::PropList::extractProp().

Referenced by otawa::PropList::extractProp().

AbstractIdentifier * otawa::AbstractIdentifier::find ( const string name)
static

Find an abstract identifier by its name.

Parameters
nameName of the looked identifier.
Returns
Found identifier or null.

Referenced by otawa::ProcessorPlugin::getIdentifier(), and otawa::Application::run().

void otawa::AbstractIdentifier::fromString ( PropList props,
const string str 
) const
virtual

Get value of an identifier from a string and store it in the given property list.

Parameters
propsProperty list to store result into.
strString to get value from.

Reimplemented in otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< otawa::ccg::Node * >, otawa::Identifier< typename Problem::Domain * >, otawa::Identifier< dfa::BitSet * >, otawa::Identifier< double >, otawa::Identifier< otawa::CFG * >, otawa::Identifier< otawa::ast::AST * >, otawa::Identifier< elm::system::elm::sys::Path >, otawa::Identifier< otawa::Microprocessor< ExeNode > * >, otawa::Identifier< otawa::ccg::Collection * >, otawa::Identifier< Domain * >, otawa::Identifier< AbstractParamProcessor * >, otawa::Identifier< otawa::CFGInfo * >, otawa::Identifier< otawa::StatInfo * >, otawa::Identifier< int >, otawa::Identifier< T * >, otawa::Identifier< elm::sys::Path >, otawa::Identifier< otawa::PropList * >, otawa::Identifier< elm::genstruct::DLList * >, otawa::Identifier< elm::system::time_t >, otawa::Identifier< display::kind_t >, otawa::Identifier< typename P::Domain * >, otawa::Identifier< typename otawa::dfa::hai::FirstUnrollingFixPoint::FixPointState * >, otawa::Identifier< otawa::PCG * >, otawa::Identifier< otawa::BasicBlock * >, otawa::Identifier< elm::String >, otawa::Identifier< Processor * >, otawa::Identifier< otawa::tsim::TreePath< otawa::BasicBlock *, otawa::tsim::BBPath * > * >, otawa::Identifier< log_level_t >, otawa::Identifier< otawa::CEClass * >, otawa::Identifier< elm::io::elm::io::OutStream * >, otawa::Identifier< bool >, otawa::Identifier< otawa::AbstractParamIdentifier * >, otawa::Identifier< typename otawa::dfa::hai::WideningFixPoint::FixPointState * >, otawa::Identifier< elm::io::elm::io::Output * >, otawa::Identifier< otawa::Progress * >, otawa::Identifier< elm::CString >, otawa::Identifier< typename otawa::dfa::hai::DefaultFixPoint::FixPointState * >, otawa::Identifier< typename FixPoint::FixPointState * >, otawa::Identifier< otawa::Symbol * >, otawa::Identifier< otawa::display::ILPSystemAddon * >, otawa::Identifier< AbstractIdentifier * >, otawa::Identifier< elm::Pair >, otawa::Identifier< otawa::arm::Info * >, and otawa::Identifier< T >.

References name().

bool otawa::PropList::hasProp ( const AbstractIdentifier id) const
inlineinherited

Test if the property list contains a property matching the given identifier.

Parameters
idProperty identifier to look for.
Returns
True if the list contains the matching property, false else.

References otawa::PropList::getProp().

Referenced by otawa::ipet::BasicConstraintsBuilder::addEntryConstraint(), otawa::Monitor::configure(), otawa::ImmutableRef< T, I >::exists(), and otawa::Manager::setVerbosity().

void otawa::AbstractIdentifier::initialize ( void  )
private

For internal use only.

References _, cerr, nam, and TRACE.

void otawa::AbstractIdentifier::initProps ( Property prop,
VarArg args 
)
protected

Add the properties found in the arguments (list of Property * ended by null) to the identifier properties.

Parameters
propFirst property.
argsNull-ended properties to scan.

References otawa::PropList::addProp(), and elm::VarArg::next().

Referenced by AbstractIdentifier().

const elm::String & otawa::AbstractIdentifier::name ( void  ) const
inline
void otawa::AbstractIdentifier::print ( elm::io::Output out) const

Print the identifier.

Parameters
outOutput stream.

References nam.

void otawa::AbstractIdentifier::print ( elm::io::Output output,
const Property prop 
) const
virtual

Print the value of the given property (accordint the property matches the given identifier).

It is an error to call this method with a property matching a different identifier.

Use the print() method of a property instead.

Reimplemented in otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< otawa::ccg::Node * >, otawa::Identifier< typename Problem::Domain * >, otawa::Identifier< dfa::BitSet * >, otawa::Identifier< double >, otawa::Identifier< otawa::CFG * >, otawa::Identifier< otawa::ast::AST * >, otawa::Identifier< elm::system::elm::sys::Path >, otawa::Identifier< otawa::Microprocessor< ExeNode > * >, otawa::Identifier< otawa::ccg::Collection * >, otawa::Identifier< Domain * >, otawa::Identifier< AbstractParamProcessor * >, otawa::Identifier< otawa::CFGInfo * >, otawa::Identifier< otawa::StatInfo * >, otawa::Identifier< int >, otawa::Identifier< T * >, otawa::Identifier< elm::sys::Path >, otawa::Identifier< otawa::PropList * >, otawa::Identifier< elm::genstruct::DLList * >, otawa::Identifier< elm::system::time_t >, otawa::Identifier< display::kind_t >, otawa::Identifier< typename P::Domain * >, otawa::Identifier< typename otawa::dfa::hai::FirstUnrollingFixPoint::FixPointState * >, otawa::Identifier< otawa::PCG * >, otawa::Identifier< otawa::BasicBlock * >, otawa::Identifier< elm::String >, otawa::Identifier< Processor * >, otawa::Identifier< otawa::tsim::TreePath< otawa::BasicBlock *, otawa::tsim::BBPath * > * >, otawa::Identifier< log_level_t >, otawa::Identifier< otawa::CEClass * >, otawa::Identifier< elm::io::elm::io::OutStream * >, otawa::Identifier< bool >, otawa::Identifier< otawa::AbstractParamIdentifier * >, otawa::Identifier< typename otawa::dfa::hai::WideningFixPoint::FixPointState * >, otawa::Identifier< elm::io::elm::io::Output * >, otawa::Identifier< otawa::Progress * >, otawa::Identifier< elm::CString >, otawa::Identifier< typename otawa::dfa::hai::DefaultFixPoint::FixPointState * >, otawa::Identifier< typename FixPoint::FixPointState * >, otawa::Identifier< otawa::Symbol * >, otawa::Identifier< otawa::display::ILPSystemAddon * >, otawa::Identifier< AbstractIdentifier * >, otawa::Identifier< elm::Pair >, and otawa::Identifier< otawa::arm::Info * >.

void otawa::AbstractIdentifier::print ( elm::io::Output output,
const Property prop 
) const
inline

References print().

Referenced by print().

void otawa::AbstractIdentifier::printFormatted ( io::Output out,
const Property prop 
) const
virtual

Print the value of the given property in a formatted way, that is, possibly to perform re-scanning after.

For example, string are quoted and special character escaped.

Parameters
outOutput to use.
propProperty to display.

Reimplemented in otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< T >, otawa::Identifier< otawa::ccg::Node * >, otawa::Identifier< typename Problem::Domain * >, otawa::Identifier< dfa::BitSet * >, otawa::Identifier< double >, otawa::Identifier< otawa::CFG * >, otawa::Identifier< otawa::ast::AST * >, otawa::Identifier< elm::system::elm::sys::Path >, otawa::Identifier< otawa::Microprocessor< ExeNode > * >, otawa::Identifier< otawa::ccg::Collection * >, otawa::Identifier< Domain * >, otawa::Identifier< AbstractParamProcessor * >, otawa::Identifier< otawa::CFGInfo * >, otawa::Identifier< otawa::StatInfo * >, otawa::Identifier< int >, otawa::Identifier< T * >, otawa::Identifier< elm::sys::Path >, otawa::Identifier< otawa::PropList * >, otawa::Identifier< elm::genstruct::DLList * >, otawa::Identifier< elm::system::time_t >, otawa::Identifier< display::kind_t >, otawa::Identifier< typename P::Domain * >, otawa::Identifier< typename otawa::dfa::hai::FirstUnrollingFixPoint::FixPointState * >, otawa::Identifier< otawa::PCG * >, otawa::Identifier< otawa::BasicBlock * >, otawa::Identifier< elm::String >, otawa::Identifier< Processor * >, otawa::Identifier< otawa::tsim::TreePath< otawa::BasicBlock *, otawa::tsim::BBPath * > * >, otawa::Identifier< log_level_t >, otawa::Identifier< otawa::CEClass * >, otawa::Identifier< elm::io::elm::io::OutStream * >, otawa::Identifier< bool >, otawa::Identifier< otawa::AbstractParamIdentifier * >, otawa::Identifier< typename otawa::dfa::hai::WideningFixPoint::FixPointState * >, otawa::Identifier< elm::io::elm::io::Output * >, otawa::Identifier< otawa::Progress * >, otawa::Identifier< elm::CString >, otawa::Identifier< typename otawa::dfa::hai::DefaultFixPoint::FixPointState * >, otawa::Identifier< typename FixPoint::FixPointState * >, otawa::Identifier< otawa::Symbol * >, otawa::Identifier< otawa::display::ILPSystemAddon * >, otawa::Identifier< AbstractIdentifier * >, otawa::Identifier< elm::Pair >, and otawa::Identifier< otawa::arm::Info * >.

void otawa::AbstractIdentifier::printFormatted ( elm::io::Output output,
const Property prop 
) const
inline

References printFormatted().

Referenced by printFormatted().

void otawa::PropList::removeAllProp ( const AbstractIdentifier id)
inherited

Remove all the properties matching the given identifier.

Parameters
idIdentifier of properties to remove.

References otawa::Property::_next, and otawa::Property::next().

Referenced by otawa::LoopUnroller::unroll().

void otawa::PropList::removeProp ( const AbstractIdentifier id)
inherited
void otawa::PropList::removeProp ( const AbstractIdentifier id)
inlineinherited
void otawa::AbstractIdentifier::serialize ( Property prop,
elm::serial2::Serializer serializer 
)
virtual

Serialize the workspace to the current serializer.

In the default implementation, do nothing.

Parameters
propProperty containing the value to serialize.
serializerSerializer to serialize to.
void otawa::PropList::setProp ( Property prop)
inherited

Set the property in the property list removing any double.

Parameters
propProperty to set.

References otawa::Property::_next, otawa::Property::id(), and otawa::Property::next().

void otawa::PropList::setProp ( const AbstractIdentifier id)
inlineinherited
const Type & otawa::AbstractIdentifier::type ( void  ) const
virtual

Get the identifier of data linked with this property.

It may return Type::no_type ever meaning that the identifier does not support type system or that it is just a flag without associated data.

Returns
Type of the associated data.

Reimplemented in otawa::Identifier< T >, otawa::Identifier< otawa::ccg::Node * >, otawa::Identifier< typename Problem::Domain * >, otawa::Identifier< dfa::BitSet * >, otawa::Identifier< double >, otawa::Identifier< otawa::CFG * >, otawa::Identifier< otawa::ast::AST * >, otawa::Identifier< elm::system::elm::sys::Path >, otawa::Identifier< otawa::Microprocessor< ExeNode > * >, otawa::Identifier< otawa::ccg::Collection * >, otawa::Identifier< Domain * >, otawa::Identifier< AbstractParamProcessor * >, otawa::Identifier< otawa::CFGInfo * >, otawa::Identifier< otawa::StatInfo * >, otawa::Identifier< int >, otawa::Identifier< T * >, otawa::Identifier< elm::sys::Path >, otawa::Identifier< otawa::PropList * >, otawa::Identifier< elm::genstruct::DLList * >, otawa::Identifier< elm::system::time_t >, otawa::Identifier< display::kind_t >, otawa::Identifier< typename P::Domain * >, otawa::Identifier< typename otawa::dfa::hai::FirstUnrollingFixPoint::FixPointState * >, otawa::Identifier< otawa::PCG * >, otawa::Identifier< otawa::BasicBlock * >, otawa::Identifier< elm::String >, otawa::Identifier< Processor * >, otawa::Identifier< otawa::tsim::TreePath< otawa::BasicBlock *, otawa::tsim::BBPath * > * >, otawa::Identifier< log_level_t >, otawa::Identifier< otawa::CEClass * >, otawa::Identifier< elm::io::elm::io::OutStream * >, otawa::Identifier< bool >, otawa::Identifier< otawa::AbstractParamIdentifier * >, otawa::Identifier< typename otawa::dfa::hai::WideningFixPoint::FixPointState * >, otawa::Identifier< elm::io::elm::io::Output * >, otawa::Identifier< otawa::Progress * >, otawa::Identifier< elm::CString >, otawa::Identifier< typename otawa::dfa::hai::DefaultFixPoint::FixPointState * >, otawa::Identifier< typename FixPoint::FixPointState * >, otawa::Identifier< otawa::Symbol * >, otawa::Identifier< otawa::display::ILPSystemAddon * >, otawa::Identifier< AbstractIdentifier * >, otawa::Identifier< elm::Pair >, and otawa::Identifier< otawa::arm::Info * >.

References otawa::Type::no_type.

Property * otawa::AbstractIdentifier::unserialize ( elm::serial2::Unserializer unserializer)
virtual

Unserialize the workspace to the current unserializer.

In the default implementation, do nothing.

Parameters
unserializerUnserializer to unserialize to.
Returns
Property result of unserialization, null if the property cannot be unserialized.

Friends And Related Function Documentation

friend class elm::Initializer< AbstractIdentifier >
friend

Member Data Documentation

const PropList otawa::PropList::EMPTY
staticinherited

This is an empty proplist for convenience.

string otawa::AbstractIdentifier::nam
private

The documentation for this class was generated from the following files: