public void TestIsInjectable() { var var = new Variable("", ClrType.FromDescriptor("X"), false, false); Assert.IsFalse(globalVariables.IsInjectable(var)); globalVariables.SetInjectable(var); Assert.IsTrue(globalVariables.IsInjectable(var)); }
public void Setup() { state = new VariableState(); instance = new Variable("var", null, false, false); field = new FieldInfo(null, "field", null, false, false, false); localField = new LocalField(instance, field); }
public int GetLoDCount(Variable variable) { int count; if ( lodCount.Find(variable, out count) ) return count; var localField = variable as LocalField; if ( localField != null ) return GetLoDCount(localField.GetField()); return 0; }
public override void SetInjectable(Variable variable) { if ( variable is LocalField || variable is FieldInfo ) { globalVariables.SetInjectable(variable); } else { base.SetInjectable(variable); } }
public void testApplySwaps() { Swap swap = new Swap(-1); Variable first = new Variable(null, ClrType.Boolean, false, false); Variable second = new Variable(null, ClrType.Boolean, false, false); IList<Variable> inputs = new ArrayList<Variable>(); inputs.Add(first); inputs.Add(second); IList<Variable> output = swap.apply(inputs); Assert.AreSame(second, output[0]); Assert.AreSame(first, output[1]); }
public virtual bool IsGlobal(Variable variable) { if ( variable == null ) return false; if ( variable.IsGlobal ) return true; if ( globals.Contains(variable) ) return true; var field = variable as LocalField; if ( field != null ) { return globals.Contains(field.GetInstance()) || globals.Contains(field.GetField()); } return false; }
public virtual bool IsInjectable(Variable variable) { if ( variable == null ) return false; if ( injectables.Contains(variable) ) { return true; } var field = variable as LocalField; if ( field != null ) { return injectables.Contains(field.GetField()); } return false; }
public void SetLoDCount(Variable variable, int newCount) { int count; if(!lodCount.Find(variable, out count)) { count = 0; } else { if(count < newCount) { count = newCount; } } lodCount[variable] = count; }
public override bool IsInjectable(Variable variable) { return base.IsInjectable(variable) || globalVariables.IsInjectable(variable); }
public override bool IsGlobal(Variable variable) { return base.IsGlobal(variable) || globalVariables.IsGlobal(variable); }
public virtual void SetInjectable(Variable variable) { injectables.Add(variable); }
public virtual void SetGlobal(Variable variable) { globals.Add(variable); }