Example #1
0
 protected MethodContractSubroutine(SubroutineFacade subroutineFacade,
                                    Method method,
                                    SimpleSubroutineBuilder <Label> builder,
                                    Label startLabel) : base(subroutineFacade, startLabel, builder)
 {
     this.method = method;
 }
Example #2
0
 public SimpleSubroutine(int stackDelta, SubroutineFacade subroutineFacade,
                         Label startLabel, SimpleSubroutineBuilder <Label> builder)
     : base(subroutineFacade, startLabel, builder)
 {
     this.stack_delta = stackDelta;
     builder.BuildBlocks(startLabel, this);
     Commit();
 }
Example #3
0
 public EnsuresSubroutine(SubroutineFacade subroutineFacade,
                          Method method,
                          SimpleSubroutineBuilder <Label> builder, Label startLabel, IImmutableSet <Subroutine> inherited)
     : base(subroutineFacade, method, builder, startLabel)
 {
     this.inferred_old_label_reverse_map = new Dictionary <int, Pair <CFGBlock, TypeNode> > ();
     AddBaseEnsures(Entry, GetTargetBlock(startLabel), inherited);
 }
Example #4
0
 public RequiresSubroutine(SubroutineFacade subroutineFacade,
                           Method method,
                           SimpleSubroutineBuilder <TLabel> builder,
                           TLabel entryLabel,
                           IImmutableSet <Subroutine> inheritedRequires)
     : base(subroutineFacade, method, builder, entryLabel)
 {
     AddBaseRequires(this.GetTargetBlock(entryLabel), inheritedRequires);
 }
Example #5
0
 public OldValueSubroutine(SubroutineFacade subroutineFacade, Method method,
                           SimpleSubroutineBuilder <TLabel> builder, TLabel startLabel)
     : base(subroutineFacade, method, builder, startLabel)
 {
 }