VGServer::AttributeSelectorList Class Reference

AttributeSelectorList holds a vector of AttributeSelectors representing the array of return values of a selection query. More...

#include <AttributeParser.h>

Inheritance diagram for VGServer::AttributeSelectorList:

VGServer::AttributePropertiesList List of all members.

Public Member Functions

void addAttrsel (const class ParseNode *attrsel)
 add a new attribute via AttributeSelector tree.
void clear ()
 clears the selector list
AttributePropertiesgetProperties (unsigned int i) const
 operator[] is an ambigious call.
ParseNodegetSelector (unsigned int i) const
 operator[] is an ambigious call.
bool parseString (const std::string &input, const class GraphProperties &gp, vertex_or_edge_t voe)
 uses the spirit parser to build a parse tree and fills this structure with the resulting selector trees.
unsigned int processEdgeAttributeBlob (AttributeVertexTinyBlob &attrblob, const class GraphContainer &gc, const class Changelist &cl, unsigned int esrc, unsigned etgt) const
 create a filled AttributeVertexTinyBlob containing the edge values extracted by this selector list.
unsigned int processVertexAttributeBlob (AttributeVertexTinyBlob &attrblob, const class GraphContainer &gc, const class Changelist &cl, unsigned int vid) const
 create a filled AttributeVertexTinyBlob containing the vertex values extracted by this selector list.
void selectStar (const AttributePropertiesList &otherlist, vertex_or_edge_t voe)
 do the * selection: add all attributes from the AttributePropertiesList
size_t size () const
 ambigious call because AttributePropertiesList is-as vector.
std::string toString () const
 more a debug function which returns the parsed selection specification as a string.
 ~AttributeSelectorList ()
 called to free all the selector trees

Detailed Description

AttributeSelectorList holds a vector of AttributeSelectors representing the array of return values of a selection query.

It is derived from AttributePropertiesList in order to inherit the Attribute Binary Description Format functions.

Definition at line 58 of file AttributeParser.h.


Constructor & Destructor Documentation

VGServer::AttributeSelectorList::~AttributeSelectorList (  )  [inline]

called to free all the selector trees

Definition at line 70 of file AttributeParser.h.

References clear().


Member Function Documentation

void VGServer::AttributeSelectorList::addAttrsel ( const class ParseNode attrsel  ) 

add a new attribute via AttributeSelector tree.

the type of the tree is determined via the getConstVal function.

Definition at line 1380 of file AttributeParser.cc.

References VGServer::ATTRTYPE_INVALID.

void VGServer::AttributeSelectorList::clear (  )  [inline]

clears the selector list

Reimplemented from VGServer::AttributePropertiesList.

Definition at line 76 of file AttributeParser.h.

References VGServer::AttributePropertiesList::clear().

Referenced by ~AttributeSelectorList().

class AttributeProperties& VGServer::AttributeSelectorList::getProperties ( unsigned int  i  )  const [inline]

operator[] is an ambigious call.

Definition at line 113 of file AttributeParser.h.

Referenced by processEdgeAttributeBlob(), and processVertexAttributeBlob().

class ParseNode* VGServer::AttributeSelectorList::getSelector ( unsigned int  i  )  const [inline]

operator[] is an ambigious call.

Definition at line 109 of file AttributeParser.h.

Referenced by processEdgeAttributeBlob(), and processVertexAttributeBlob().

bool VGServer::AttributeSelectorList::parseString ( const std::string &  input,
const class GraphProperties gp,
vertex_or_edge_t  voe 
)

uses the spirit parser to build a parse tree and fills this structure with the resulting selector trees.

Returns true if parsing was successful, throws Exceptions for various syntactic and semantic errors.

Definition at line 1443 of file AttributeParser.cc.

References VGServer::AttributeParser::build_attrlist(), and g_snprintf.

unsigned int VGServer::AttributeSelectorList::processEdgeAttributeBlob ( AttributeVertexTinyBlob attrblob,
const class GraphContainer gc,
const class Changelist cl,
unsigned int  esrc,
unsigned  etgt 
) const [inline]

create a filled AttributeVertexTinyBlob containing the edge values extracted by this selector list.

Return the length of the resulting attribute chain.

Definition at line 155 of file AttributeParser.h.

References VGServer::ATTRTYPE_BOOL, VGServer::ATTRTYPE_INVALID, VGServer::AttributePropertiesList::defbytes, getProperties(), getSelector(), VGServer::ParseNode::getValue(), VGServer::TpAttributeBlob< AllocPolicy >::putAnyType(), VGServer::TpAttributeBlob< AllocPolicy >::putBool(), size(), VGServer::VE_EDGE, and VGServer::TpAttributeBlob< AllocPolicy >::zero().

unsigned int VGServer::AttributeSelectorList::processVertexAttributeBlob ( AttributeVertexTinyBlob attrblob,
const class GraphContainer gc,
const class Changelist cl,
unsigned int  vid 
) const [inline]

create a filled AttributeVertexTinyBlob containing the vertex values extracted by this selector list.

Return the length of the resulting attribute chain.

Definition at line 119 of file AttributeParser.h.

References VGServer::ATTRTYPE_BOOL, VGServer::ATTRTYPE_INVALID, VGServer::AttributePropertiesList::defbytes, getProperties(), getSelector(), VGServer::ParseNode::getValue(), VGServer::TpAttributeBlob< AllocPolicy >::putAnyType(), VGServer::TpAttributeBlob< AllocPolicy >::putBool(), size(), VGServer::VE_VERTEX, and VGServer::TpAttributeBlob< AllocPolicy >::zero().

void VGServer::AttributeSelectorList::selectStar ( const AttributePropertiesList otherlist,
vertex_or_edge_t  voe 
)

do the * selection: add all attributes from the AttributePropertiesList

Definition at line 1364 of file AttributeParser.cc.

size_t VGServer::AttributeSelectorList::size (  )  const [inline]

ambigious call because AttributePropertiesList is-as vector.

But their size must be the same anyway.

Definition at line 103 of file AttributeParser.h.

Referenced by processEdgeAttributeBlob(), and processVertexAttributeBlob().

std::string VGServer::AttributeSelectorList::toString (  )  const

more a debug function which returns the parsed selection specification as a string.

Definition at line 1476 of file AttributeParser.cc.


The documentation for this class was generated from the following files:
Generated on Wed Sep 27 14:34:01 2006 for VGServer by  doxygen 1.4.7