public HideInterfaceModuleExpr(ParserRuleContext sourceNode, List <Interface> interfaces, IPModuleExpr module)
 {
     SourceLocation  = sourceNode;
     hideInterfaces  = interfaces;
     ComponentModule = module;
     ModuleInfo      = null;
 }
Exemple #2
0
 public AssertModuleExpr(ParserRuleContext sourceNode, List <Machine> specs, IPModuleExpr module)
 {
     SourceLocation  = sourceNode;
     specMonitors    = specs;
     ComponentModule = module;
     ModuleInfo      = null;
 }
        public void CheckWellFormedness(IPModuleExpr moduleExpr)
        {
            switch (moduleExpr)
            {
            case AssertModuleExpr assertExpr:
                CheckWellFormedness(assertExpr);
                break;

            case BindModuleExpr bindExpr:
                CheckWellFormedness(bindExpr);
                break;

            case RenameModuleExpr renameExpr:
                CheckWellFormedness(renameExpr);
                break;

            case UnionOrComposeModuleExpr uOrCExpr:
                CheckWellFormedness(uOrCExpr);
                break;

            case HideEventModuleExpr hideEExpr:
                CheckWellFormedness(hideEExpr);
                break;

            case HideInterfaceModuleExpr hideIExpr:
                CheckWellFormedness(hideIExpr);
                break;

            default:
                throw handler.InternalError(moduleExpr.SourceLocation,
                                            new ArgumentOutOfRangeException(nameof(moduleExpr)));
            }
        }
Exemple #4
0
 public RenameModuleExpr(ParserRuleContext sourceNode, Interface newName, Interface oldName, IPModuleExpr module)
 {
     SourceLocation  = sourceNode;
     NewInterface    = newName;
     OldInterface    = oldName;
     ComponentModule = module;
     ModuleInfo      = null;
 }
Exemple #5
0
 public HideEventModuleExpr(ParserRuleContext sourceNode, IEnumerable <PEvent> events, IPModuleExpr module)
 {
     SourceLocation = sourceNode;
     HideEvents     = new EventSet();
     HideEvents.AddEvents(events);
     ComponentModule = module;
     ModuleInfo      = null;
 }