|
|
A policy is instantiated by a protocol and policytype. Thus, semantic checking must be performed realtive to the instantiation. [Generic semantic checking may be accomplished too, but it is not done.]
enum PolicyType { IMPORT, EXPORT } | PolicyType |
sem_error (class) | sem_error |
VisitorSemantic (SemanticVarRW& varrw, VarMap& varmap, SetMap& setmap,
PolicyMap& pmap, const string& protocol, PolicyType ptype)
| VisitorSemantic |
Parameters:
varrw | semantic VarRW used to simulate a protocol. |
varmap | the varmap. |
setmap | the SetMap to check if sets exist. |
pmap | the policy map to check subroutines. |
protocol | the protocol which instantiates the policy. |
ptype | the type of policy [import/export]. |
const Element* visit (PolicyStatement& policy)
| visit |
Reimplemented from Visitor.
const Element* visit (Term& term)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeUn& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeBin& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeAssign& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeVar& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeSet& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeElem& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeAccept& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeReject& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeProto& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeNext& node)
| visit |
Reimplemented from Visitor.
const Element* visit (NodeSubr& node)
| visit |
Reimplemented from Visitor.
const set<string>& sets ()
| sets |
[const]
Returns: sets used by the policy.