Changeset 1751
- Timestamp:
- 05/30/08 11:21:00 (18 months ago)
- Location:
- trunk
- Files:
-
- 5 modified
- 1 moved
-
LICENSE (moved) (moved from trunk/ProjectFortress/LICENSE)
-
ProjectFortress/src/com/sun/fortress/interpreter/env/BetterEnv.java (modified) (6 diffs)
-
ProjectFortress/src/com/sun/fortress/interpreter/evaluator/BaseEnv.java (modified) (1 diff)
-
ProjectFortress/src/com/sun/fortress/interpreter/evaluator/CommonEnv.java (modified) (1 diff)
-
ProjectFortress/src/com/sun/fortress/interpreter/evaluator/EmptyEnv.java (modified) (1 diff)
-
ProjectFortress/src/com/sun/fortress/interpreter/evaluator/Environment.java (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ProjectFortress/src/com/sun/fortress/interpreter/env/BetterEnv.java
r1749 r1751 197 197 } 198 198 199 public BetterEnv extend(BetterEnv additions) { 200 return new BetterEnv(this, additions); 201 } 202 203 public BetterEnv extendAt(HasAt x) { 204 return new BetterEnv(this, x); 205 } 206 207 public BetterEnv extend() { 208 return new BetterEnv(this, this.getAt()); 209 } 210 211 private void augment(BetterEnv existing, BetterEnv additions) { 199 private void augment(BetterEnv existing, BetterEnv additions) { 212 200 type_env = augment(existing.type_env, additions.type_env); 213 201 nat_env = augment(existing.nat_env, additions.nat_env); … … 220 208 } 221 209 222 static <Result> BATreeNode<String, Result> augment(210 private static <Result> BATreeNode<String, Result> augment( 223 211 BATreeNode<String, Result> original, 224 212 BATreeNode<String, Result> toBeAdded) { … … 228 216 } 229 217 230 static <Result> BATreeNode<String, Result> augmentRecursive(218 private static <Result> BATreeNode<String, Result> augmentRecursive( 231 219 BATreeNode<String, Result> original, 232 220 BATreeNode<String, Result> toBeAdded) { … … 245 233 } 246 234 247 static public String string(FValue f1) { 248 return ((FString) f1).getString(); 249 } 250 251 private <Result> Result get(BATreeNode<String, Result> table, String index) { 235 private <Result> Result get(BATreeNode<String, Result> table, String index) { 252 236 Result r = null; 253 237 if (table != null) { … … 417 401 } 418 402 419 public void assignValue(HasAt loc, String str, FValue value) { 403 public BetterEnv extend(BetterEnv additions) { 404 return new BetterEnv(this, additions); 405 } 406 407 public BetterEnv extendAt(HasAt x) { 408 return new BetterEnv(this, x); 409 } 410 411 public BetterEnv extend() { 412 return new BetterEnv(this, this.getAt()); 413 } 414 415 static public String string(FValue f1) { 416 return ((FString) f1).getString(); 417 } 418 419 public void assignValue(HasAt loc, String str, FValue value) { 420 420 FValue v = get(var_env, str); 421 421 if (v instanceof ReferenceCell) { … … 456 456 // } 457 457 458 public Boolean casValue(String str, FValue old_value, FValue new_value) { 459 return bug("Cas on envs no longer supported"); 460 } 461 462 458 463 459 public void debugPrint(String debugString) { 464 460 if (debug) -
trunk/ProjectFortress/src/com/sun/fortress/interpreter/evaluator/BaseEnv.java
r799 r1751 46 46 * @see com.sun.fortress.interpreter.evaluator.Environment#casValue(com.sun.fortress.interpreter.evaluator.values.FValue, com.sun.fortress.interpreter.evaluator.values.FValue, com.sun.fortress.interpreter.evaluator.values.FValue) 47 47 */ 48 final public Boolean casValue(FValue f1, FValue old_value, FValue new_value) { 49 return casValue(string(f1), old_value, new_value); 50 } 51 48 52 49 final public void putValue(FValue f1, FValue f2) { 53 50 putValue(string(f1), f2); -
trunk/ProjectFortress/src/com/sun/fortress/interpreter/evaluator/CommonEnv.java
r1665 r1751 80 80 return x; 81 81 } 82 83 abstract public Boolean casValue(String str, FValue old_value, FValue new_value) ;84 82 85 83 abstract public Closure getRunClosure() ; -
trunk/ProjectFortress/src/com/sun/fortress/interpreter/evaluator/EmptyEnv.java
r1665 r1751 34 34 public class EmptyEnv extends CommonEnv { 35 35 36 /* (non-Javadoc)37 * @see com.sun.fortress.interpreter.evaluator.CommonEnv#casValue(java.lang.String, com.sun.fortress.interpreter.evaluator.values.FValue, com.sun.fortress.interpreter.evaluator.values.FValue)38 */39 @Override40 public Boolean casValue(String str, FValue old_value, FValue new_value) {41 return bug("Empty environment does not support cas");42 }43 44 45 36 46 37 /* (non-Javadoc) -
trunk/ProjectFortress/src/com/sun/fortress/interpreter/evaluator/Environment.java
r1665 r1751 89 89 public abstract void assignValue(HasAt loc, String str, FValue f2); 90 90 91 // public abstract void assignValue(FValue f1, FValue f2);92 93 public abstract Boolean casValue(String str, FValue old_value, FValue new_value);94 95 public abstract Boolean casValue(FValue f1, FValue old_value, FValue new_value);96 97 91 public abstract Closure getRunClosure(); 98 92

