OMNeT++ NEDXML 6.1
Discrete Event Simulation Library
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
NedCrossValidator Class Reference

Description

Performs cross validation. Should be called after tree passed DTD validation and syntax validation.

Inherits NedValidatorBase.

Collaboration diagram for NedCrossValidator:
[legend]

Public Member Functions

 NedCrossValidator (NedResourceCache *resolver, ErrorStore *e)
 
virtual ~NedCrossValidator ()
 

Protected Member Functions

ASTNodefindChildWithTagAndAttribute (ASTNode *node, int tag, const char *attr, const char *value)
 
void checkGate (GateElement *gate, bool hasGateIndex, bool isInput, ASTNode *conn, bool isSrcGate)
 
void validateConnGate (const char *submodName, bool hasSubmodIndex, const char *gateName, bool hasGateIndex, ASTNode *parent, ASTNode *conn, bool isSrc)
 
ASTNodegetXXXDeclaration (const char *name, int tagcode1, int tagcode2=-1)
 
ASTNodegetModuleDeclaration (const char *name)
 
ASTNodegetChannelDeclaration (const char *name)
 
ASTNodegetModuleInterfaceDeclaration (const char *name)
 
ASTNodegetChannelInterfaceDeclaration (const char *name)
 
Validator methods
virtual void validateElement (FilesElement *node) override
 
virtual void validateElement (NedFileElement *node) override
 
virtual void validateElement (CommentElement *node) override
 
virtual void validateElement (ImportElement *node) override
 
virtual void validateElement (PropertyDeclElement *node) override
 
virtual void validateElement (ExtendsElement *node) override
 
virtual void validateElement (InterfaceNameElement *node) override
 
virtual void validateElement (SimpleModuleElement *node) override
 
virtual void validateElement (ModuleInterfaceElement *node) override
 
virtual void validateElement (CompoundModuleElement *node) override
 
virtual void validateElement (ChannelInterfaceElement *node) override
 
virtual void validateElement (ChannelElement *node) override
 
virtual void validateElement (ParametersElement *node) override
 
virtual void validateElement (ParamElement *node) override
 
virtual void validateElement (PropertyElement *node) override
 
virtual void validateElement (PropertyKeyElement *node) override
 
virtual void validateElement (GatesElement *node) override
 
virtual void validateElement (GateElement *node) override
 
virtual void validateElement (TypesElement *node) override
 
virtual void validateElement (SubmodulesElement *node) override
 
virtual void validateElement (SubmoduleElement *node) override
 
virtual void validateElement (ConnectionsElement *node) override
 
virtual void validateElement (ConnectionElement *node) override
 
virtual void validateElement (ConnectionGroupElement *node) override
 
virtual void validateElement (LoopElement *node) override
 
virtual void validateElement (ConditionElement *node) override
 
virtual void validateElement (LiteralElement *node) override
 
virtual void validateElement (UnknownElement *node) override
 

Protected Attributes

NedResourceCacheresolver
 
ASTNodemoduleTypeDecl
 

Constructor & Destructor Documentation

◆ NedCrossValidator()

NedCrossValidator ( NedResourceCache resolver,
ErrorStore e 
)

Constructor

◆ ~NedCrossValidator()

virtual ~NedCrossValidator ( )
inlinevirtual

Destructor

Member Function Documentation

◆ findChildWithTagAndAttribute()

ASTNode* findChildWithTagAndAttribute ( ASTNode node,
int  tag,
const char *  attr,
const char *  value 
)
protected

◆ checkGate()

void checkGate ( GateElement *  gate,
bool  hasGateIndex,
bool  isInput,
ASTNode conn,
bool  isSrcGate 
)
protected

◆ validateConnGate()

void validateConnGate ( const char *  submodName,
bool  hasSubmodIndex,
const char *  gateName,
bool  hasGateIndex,
ASTNode parent,
ASTNode conn,
bool  isSrc 
)
protected

◆ getXXXDeclaration()

ASTNode* getXXXDeclaration ( const char *  name,
int  tagcode1,
int  tagcode2 = -1 
)
protected

◆ getModuleDeclaration()

ASTNode* getModuleDeclaration ( const char *  name)
protected

◆ getChannelDeclaration()

ASTNode* getChannelDeclaration ( const char *  name)
protected

◆ getModuleInterfaceDeclaration()

ASTNode* getModuleInterfaceDeclaration ( const char *  name)
protected

◆ getChannelInterfaceDeclaration()

ASTNode* getChannelInterfaceDeclaration ( const char *  name)
protected

◆ validateElement() [1/28]

virtual void validateElement ( FilesElement *  node)
overrideprotectedvirtual

◆ validateElement() [2/28]

virtual void validateElement ( NedFileElement *  node)
overrideprotectedvirtual

◆ validateElement() [3/28]

virtual void validateElement ( CommentElement *  node)
overrideprotectedvirtual

◆ validateElement() [4/28]

virtual void validateElement ( ImportElement *  node)
overrideprotectedvirtual

◆ validateElement() [5/28]

virtual void validateElement ( PropertyDeclElement *  node)
overrideprotectedvirtual

◆ validateElement() [6/28]

virtual void validateElement ( ExtendsElement *  node)
overrideprotectedvirtual

◆ validateElement() [7/28]

virtual void validateElement ( InterfaceNameElement *  node)
overrideprotectedvirtual

◆ validateElement() [8/28]

virtual void validateElement ( SimpleModuleElement *  node)
overrideprotectedvirtual

◆ validateElement() [9/28]

virtual void validateElement ( ModuleInterfaceElement *  node)
overrideprotectedvirtual

◆ validateElement() [10/28]

virtual void validateElement ( CompoundModuleElement *  node)
overrideprotectedvirtual

◆ validateElement() [11/28]

virtual void validateElement ( ChannelInterfaceElement *  node)
overrideprotectedvirtual

◆ validateElement() [12/28]

virtual void validateElement ( ChannelElement *  node)
overrideprotectedvirtual

◆ validateElement() [13/28]

virtual void validateElement ( ParametersElement *  node)
overrideprotectedvirtual

◆ validateElement() [14/28]

virtual void validateElement ( ParamElement *  node)
overrideprotectedvirtual

◆ validateElement() [15/28]

virtual void validateElement ( PropertyElement *  node)
overrideprotectedvirtual

◆ validateElement() [16/28]

virtual void validateElement ( PropertyKeyElement *  node)
overrideprotectedvirtual

◆ validateElement() [17/28]

virtual void validateElement ( GatesElement *  node)
overrideprotectedvirtual

◆ validateElement() [18/28]

virtual void validateElement ( GateElement *  node)
overrideprotectedvirtual

◆ validateElement() [19/28]

virtual void validateElement ( TypesElement *  node)
overrideprotectedvirtual

◆ validateElement() [20/28]

virtual void validateElement ( SubmodulesElement *  node)
overrideprotectedvirtual

◆ validateElement() [21/28]

virtual void validateElement ( SubmoduleElement *  node)
overrideprotectedvirtual

◆ validateElement() [22/28]

virtual void validateElement ( ConnectionsElement *  node)
overrideprotectedvirtual

◆ validateElement() [23/28]

virtual void validateElement ( ConnectionElement *  node)
overrideprotectedvirtual

◆ validateElement() [24/28]

virtual void validateElement ( ConnectionGroupElement *  node)
overrideprotectedvirtual

◆ validateElement() [25/28]

virtual void validateElement ( LoopElement *  node)
overrideprotectedvirtual

◆ validateElement() [26/28]

virtual void validateElement ( ConditionElement *  node)
overrideprotectedvirtual

◆ validateElement() [27/28]

virtual void validateElement ( LiteralElement *  node)
overrideprotectedvirtual

◆ validateElement() [28/28]

virtual void validateElement ( UnknownElement *  node)
overrideprotectedvirtual

Member Data Documentation

◆ resolver

NedResourceCache* resolver
protected

◆ moduleTypeDecl

ASTNode* moduleTypeDecl
protected

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