public TerminatedWithDisallowedLoopBound(ProgramLocation location, BigInteger loopBound) { Debug.Assert(location != null, "location cannot be null"); this.LoopBound = loopBound; this.ExitLocation = location; State = null; }
public ExecutionState Clone(ProgramLocation loc) { ExecutionState other = (ExecutionState)this.MemberwiseClone(); other.Mem = this.Mem.Clone(); other.Id = NewId++; other.Constraints = this.Constraints.Clone(); other.CreatedAt = loc; return(other); }
public ExecutionTreeNode(ExecutionState self, ExecutionTreeNode parent, ProgramLocation createdAt) { Debug.Assert(self != null, "self cannot be null!"); this.State = self; if (parent == null) { this.Parent = null; } else { this.Parent = parent; // Add this as a child of the parent this.Parent.AddChild(this); } this.Depth = self.ExplicitBranchDepth; this.CreatedAt = createdAt; Children = new List <ExecutionTreeNode>(); // Should we lazily create this? }
public Constraint(Expr condition, ProgramLocation location) : this(condition) { Debug.Assert(location != null); Origin = location; ComputeUsedVariablesAndUninterpretedFunctions(); }
public TerminatedWithDisallowedExplicitBranchDepth(ProgramLocation location) { Debug.Assert(location != null, "location cannot be null"); this.ExitLocation = location; State = null; }
public TerminatedWithDisallowedSpeculativePath(ProgramLocation loc) { this.ExitLocation = loc; }
public void AddConstraint(Expr e, ProgramLocation location) { AddConstraint(new Constraint(e, location)); }
public void MakeSpeculative(ProgramLocation loc) { Speculative = true; Debug.Assert(loc != null); SpeculativeStart = loc; }