OMNeT++ NEDXML  6.0.3
NedCrossValidator Class Reference

#include <nedcrossvalidator.h>

Description

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

Inheritance diagram for NedCrossValidator:

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: