/** This method selects the component of this value. The component is specified by path. */ public final Value select(Value[] path) { Value result = this; for (int i = 0; i < path.length; i++) { if (!(result instanceof Applicable)) { Assert.fail( "Attempted to apply EXCEPT construct to the value " + ppr(result.toString()) + "."); } Value elem = path[i]; result = ((Applicable) result).select(elem); if (result == null) return null; } return result; }
public final boolean member(Value elem) { Assert.fail( "Attempted to check if the value:\n" + elem == null ? "null" : ppr(elem.toString()) + "\nis an element of operator " + this.toString()); return false; // make compiler happy }
/** * This method returns the value permuted by the permutation. It returns this if nothing is * permuted. */ public Value permute(MVPerm perm) { Assert.fail( "TLC has found a state in which the value of a variable contains " + Value.ppr(this.toString())); // SZ Feb 24, 2009: changed to static access return null; // make compiler happy }
/* This method returns the fingerprint of this value. */ public long fingerPrint(long fp) { Assert.fail( "TLC has found a state in which the value of a variable contains " + Value.ppr(this.toString())); // SZ Feb 24, 2009: changed to static access return 0; // make compiler happy }