OMNeT++ NEDXML  5.4.1
NedSyntaxValidator Class Reference

#include <nedsyntaxvalidator.h>

Description

Performs structural validation of components.

It assumes that the tree already passed DTD validation. Every compound module and other component is viewed in isolation: syntax validation does NOT process imports or examines validity of references to other module types, channel types, etc.

Inheritance diagram for NedSyntaxValidator:

Public Member Functions

 NedSyntaxValidator (bool parsedExpr, ErrorStore *e)
 
virtual ~NedSyntaxValidator ()
 

Protected Member Functions

void checkExpressionAttributes (ASTNode *node, const char *attrs[], bool optional[], int n)
 
void checkEnumAttribute (ASTNode *node, const char *attr, const char *values[], int n)
 
void checkDottedNameAttribute (ASTNode *node, const char *attr, bool wildcardsAllowed)
 
void checkPropertyNameAttribute (ASTNode *node, const char *attr)
 
void checkPropertyIndexAttribute (ASTNode *node, const char *attr)
 
bool isWithinSubcomponent (ASTNode *node)
 
bool isWithinInnerType (ASTNode *node)
 
Validator methods
virtual void validateElement (FilesElement *node) override
 
virtual void validateElement (NedFileElement *node) override
 
virtual void validateElement (CommentElement *node) override
 
virtual void validateElement (PackageElement *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 (ExpressionElement *node) override
 
virtual void validateElement (OperatorElement *node) override
 
virtual void validateElement (FunctionElement *node) override
 
virtual void validateElement (IdentElement *node) override
 
virtual void validateElement (LiteralElement *node) override
 
virtual void validateElement (UnknownElement *node) override
 

Protected Attributes

bool parsedExpressions
 

Constructor & Destructor Documentation

NedSyntaxValidator ( bool  parsedExpr,
ErrorStore e 
)
inline

Constructor. Bool argument specifies if the validator should expect parsed or unparsed expressions in the tree (This affects the validation process.)

virtual ~NedSyntaxValidator ( )
inlinevirtual

Destructor.

Member Function Documentation

void checkExpressionAttributes ( ASTNode node,
const char *  attrs[],
bool  optional[],
int  n 
)
protected
void checkEnumAttribute ( ASTNode node,
const char *  attr,
const char *  values[],
int  n 
)
protected
void checkDottedNameAttribute ( ASTNode node,
const char *  attr,
bool  wildcardsAllowed 
)
protected
void checkPropertyNameAttribute ( ASTNode node,
const char *  attr 
)
protected
void checkPropertyIndexAttribute ( ASTNode node,
const char *  attr 
)
protected
bool isWithinSubcomponent ( ASTNode node)
protected
bool isWithinInnerType ( ASTNode node)
protected
virtual void validateElement ( FilesElement *  node)
overrideprotectedvirtual
virtual void validateElement ( NedFileElement *  node)
overrideprotectedvirtual
virtual void validateElement ( CommentElement *  node)
overrideprotectedvirtual
virtual void validateElement ( PackageElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ImportElement *  node)
overrideprotectedvirtual
virtual void validateElement ( PropertyDeclElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ExtendsElement *  node)
overrideprotectedvirtual
virtual void validateElement ( InterfaceNameElement *  node)
overrideprotectedvirtual
virtual void validateElement ( SimpleModuleElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ModuleInterfaceElement *  node)
overrideprotectedvirtual
virtual void validateElement ( CompoundModuleElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ChannelInterfaceElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ChannelElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ParametersElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ParamElement *  node)
overrideprotectedvirtual
virtual void validateElement ( PropertyElement *  node)
overrideprotectedvirtual
virtual void validateElement ( PropertyKeyElement *  node)
overrideprotectedvirtual
virtual void validateElement ( GatesElement *  node)
overrideprotectedvirtual
virtual void validateElement ( GateElement *  node)
overrideprotectedvirtual
virtual void validateElement ( TypesElement *  node)
overrideprotectedvirtual
virtual void validateElement ( SubmodulesElement *  node)
overrideprotectedvirtual
virtual void validateElement ( SubmoduleElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ConnectionsElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ConnectionElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ConnectionGroupElement *  node)
overrideprotectedvirtual
virtual void validateElement ( LoopElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ConditionElement *  node)
overrideprotectedvirtual
virtual void validateElement ( ExpressionElement *  node)
overrideprotectedvirtual
virtual void validateElement ( OperatorElement *  node)
overrideprotectedvirtual
virtual void validateElement ( FunctionElement *  node)
overrideprotectedvirtual
virtual void validateElement ( IdentElement *  node)
overrideprotectedvirtual
virtual void validateElement ( LiteralElement *  node)
overrideprotectedvirtual
virtual void validateElement ( UnknownElement *  node)
overrideprotectedvirtual

Member Data Documentation

bool parsedExpressions
protected

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