AFI
Advanced Forwarding Interface
|
Base class for all Aft entries. More...
#include <AftEntry.h>
Public Member Functions | |
AftEntry (const AftNodeToken newParentNode, const AftKey newKey, const AftNodeToken newEntryNode) | |
Construct an entry for a container node. More... | |
_entryNode (newEntryNode) | |
AftEntry (const AftNodeToken newParentNode, const AftKeyVector newKeys, const AftNodeToken newEntryNode) | |
Construct an entry for a container node. More... | |
AftEntry (const AftNodeToken newParentNode, const AftIndex newEntryIndex, const AftNodeToken newEntryNode) | |
Construct an indexed entry. More... | |
const AftNodeToken | parentNode () const |
const AftKeyVector & | entryKeys () const |
const AftNodeToken | entryNode () const |
void | setEntryParameters (const AftParameters::Ptr &newParams) |
Set the optional parameters of the entry. More... | |
const AftParameters::Ptr | entryParameters () const |
template<class T > | |
std::shared_ptr< T > | entryParameter (const std::string &name) |
Convenience parameter access template. Use this to access entry parameters. More... | |
void | setEntryParameter (const std::string &name, const AftDataPtr &data) |
Convenience parameter setter. Use this to set entry parameters. More... | |
virtual const std::string | entryType () const |
virtual const bool | entryIsDelete () const |
@ returns true if entry is a delete | |
virtual const bool | entryIsValid (const AftValidatorPtr &validator, std::ostream &os) |
@ returns true if entry is valid | |
virtual void | nextNodes (AftTokenVector &nextTokens) |
virtual std::ostream & | description (std::ostream &os) const |
Append a description of the entry to an output stream. More... | |
Static Public Member Functions | |
static AftEntryPtr | create (const AftNodeToken newParentNode, const AftKeyVector newKeys, const AftNodeToken newEntryNode) |
Factory generator for an entry for a container node. More... | |
static AftEntryPtr | create (const AftNodeToken newParentNode, const AftKey newKey, const AftNodeToken newEntryNode) |
Factory generator for an entry for a container node. More... | |
static AftEntryPtr | create (const AftNodeToken newParentNode, const AftIndex newEntryIndex, const AftNodeToken newEntryNode) |
Factory generator for an indexed entry. More... | |
Protected Attributes | |
AftNodeToken | _parentNode |
Node token of the container for the entry. | |
AftKeyVector | _entryKeys |
Unique key values for the entry. | |
AftNodeToken | _entryNode |
Token for the first node to execute on a match. | |
AftParameters::Ptr | _entryParams |
Optional parameters for the entry. | |
Friends | |
std::ostream & | operator<< (std::ostream &os, const AftEntry &entry) |
Define << class operator to append description to an output stream. More... | |
Base class for all Aft entries.
|
inline |
Construct an entry for a container node.
[in] | newParentNode | Token for parent node for entry |
[in] | newKey | Unique key for entry |
[in] | newEntryNode | Token value of next node |
|
inline |
Construct an entry for a container node.
[in] | newParentNode | Token for parent node for entry |
[in] | newKeys | Vector of unique keys for entry |
[in] | newEntryNode | Token value of next node |
|
inline |
Construct an indexed entry.
[in] | newParentNode | Token for parent node insert into |
[in] | newEntryIndex | Index of entry to insert |
[in] | newEntryNode | Token for node to execute for this entry |
|
inlinestatic |
Factory generator for an entry for a container node.
[in] | newParentNode | Token for parent node for entry |
[in] | newKeys | Vector of unique keys for entry |
[in] | newEntryNode | Token value of next node |
|
inlinestatic |
Factory generator for an entry for a container node.
[in] | newParentNode | Token for parent node for entry |
[in] | newKey | Unique key for entry |
[in] | newEntryNode | Token value of next node |
|
inlinestatic |
Factory generator for an indexed entry.
[in] | newParentNode | Token for parent node for entry |
[in] | newEntryIndex | Index of entry to insert |
[in] | newEntryNode | Token for node to execute for this entry |
|
inlinevirtual |
Append a description of the entry to an output stream.
[in] | os | Reference to output stream to append description to |
|
inline |
|
inline |
|
inline |
Convenience parameter access template. Use this to access entry parameters.
[in] | name | Parameter name to look for |
|
inline |
|
inlinevirtual |
Reimplemented in AftDeleteEntry, and AftFilterTerm.
|
inlinevirtual |
|
inline |
|
inline |
Convenience parameter setter. Use this to set entry parameters.
[in] | name | Parameter name to set |
[in] | data | Reference to data to associate with name |
|
inline |
Set the optional parameters of the entry.
[in] | newParams | Pointer to parameters for entry |
|
friend |
Define << class operator to append description to an output stream.
[in] | os | Reference to output stream to append to |
[in] | entry | Reference to entry to append description of to stream |