Package edu.cmu.cs.fusion.constraint

Examples of edu.cmu.cs.fusion.constraint.FreeVars


    utils = new TestUtils();
  }
 
  @Test
  public void testFreeVars() {
    FreeVars fv;
    Predicate bPred = new BooleanValue(utils.getVar(0));
   
    fv = bPred.getFreeVariables();
    assertEquals(1, fv.size());
    assertEquals(fv.getType(utils.getVar(0)), FreeVars.BOOL_TYPE);
  }
View Full Code Here


    assertEquals("Bar", vars2.getType(new SpecVar("bar")));
  }

  @Test
  public void testUnionSubtype() throws FusionException {
    FreeVars vars1 = new FreeVars();
    vars1 = vars1.addVar(new SpecVar("foo"), "Foo");

    FreeVars vars2 = new FreeVars();
    vars2 = vars2.addVar(new SpecVar("foo"), "SnaFu");
    vars2 = vars2.addVar(new SpecVar("bar"), "Bar");
    vars2 = vars2.union(vars1);
    assertEquals(2, vars2.size());
    assertEquals("Foo", vars2.getType(new SpecVar("foo")));
    assertEquals("Bar", vars2.getType(new SpecVar("bar")));
  }
View Full Code Here

    assertEquals("Bar", vars2.getType(new SpecVar("bar")));
  }

  @Test
  public void testUnionSupertype() throws FusionException {
    FreeVars vars1 = new FreeVars();
    vars1 = vars1.addVar(new SpecVar("foo"), "SnaFu");

    FreeVars vars2 = new FreeVars();
    vars2 = vars2.addVar(new SpecVar("foo"), "Foo");
    vars2 = vars2.addVar(new SpecVar("bar"), "Bar");
    vars2 = vars2.union(vars1);
    assertEquals(2, vars2.size());
    assertEquals("Foo", vars2.getType(new SpecVar("foo")));
    assertEquals("Bar", vars2.getType(new SpecVar("bar")));
  }
View Full Code Here

    assertEquals("Bar", vars2.getType(new SpecVar("bar")));
  }
 
  @Test
  public void testUnionRemove() throws FusionException {
    FreeVars vars1 = new FreeVars();
    vars1 = vars1.addVar(new SpecVar("foo"), "SnaFu");
    vars1 = vars1.addVar(new SpecVar("bazar"), "Bazar");

    FreeVars vars2 = new FreeVars();
    vars2 = vars2.addVar(new SpecVar("foo"), "Foo");
    vars2 = vars2.addVar(new SpecVar("bar"), "Bar");
    vars2 = vars2.union(vars1).subtract(vars2);
    assertEquals(1, vars2.size());
    assertEquals("Bazar", vars2.getType(new SpecVar("bazar")));
  }
View Full Code Here

    assertEquals("Bazar", vars2.getType(new SpecVar("bazar")));
  }

  @Test
  public void testUnionUnequal() throws FusionException {
    FreeVars vars1 = new FreeVars();
    vars1 = vars1.addVar(new SpecVar("foo"), "SnaFu");
    vars1 = vars1.addVar(new SpecVar("bar"), "Bazar");

    FreeVars vars2 = new FreeVars();
    vars2 = vars2.addVar(new SpecVar("foo"), "Bazar");
    vars2 = vars2.addVar(new SpecVar("bar"), "Snafu");
    vars2 = vars2.union(vars1);
    assertEquals(2, vars2.size());
    assertEquals(FreeVars.OBJECT_TYPE, vars2.getType(new SpecVar("foo")));
    assertEquals(FreeVars.OBJECT_TYPE, vars2.getType(new SpecVar("bar")));
  }
View Full Code Here

  }
 
  @Test
  public void testEmptyFindLabels() {
    FusionEnvironment<?> env = new FusionEnvironment<TestAliasContext>(aliases, null, null, testH, new InferenceEnvironment(null), Variant.PRAGMATIC_VARIANT);
    FreeVars fv = new FreeVars();
    ConsList<Binding> emptyList = ConsList.empty();
    List<Substitution> subs = env.findLabels(emptyList, fv);
   
    assertEquals(1, subs.size());
   
View Full Code Here

  }
 
  @Test
  public void testFindLabelsOneOption() {
    FusionEnvironment<?> env = new FusionEnvironment<TestAliasContext>(aliases, null, null, testH, new InferenceEnvironment(null), Variant.PRAGMATIC_VARIANT);
    FreeVars fv = new FreeVars().addVar(new SpecVar("a"), "Foo").addVar(new SpecVar("b"), "Bar");
    ConsList<Binding> list = ConsList.empty();
   
    list = ConsList.cons(new Binding(new SpecVar("a"), vars[0]), list);
    list = ConsList.cons(new Binding(new SpecVar("b"), vars[1]), list);
   
View Full Code Here

  }

  @Test
  public void testFindLabelsAliasesAllDefinite() {
    FusionEnvironment<?> env = new FusionEnvironment<TestAliasContext>(aliases, null, null, testH, new InferenceEnvironment(null), Variant.PRAGMATIC_VARIANT);
    FreeVars fv = new FreeVars().addVar(new SpecVar("a"), "Foo").addVar(new SpecVar("b"), "Bar");
    ConsList<Binding> list = ConsList.empty();
   
    list = ConsList.cons(new Binding(new SpecVar("a"), vars[2]), list);
    list = ConsList.cons(new Binding(new SpecVar("b"), vars[1]), list);
   
View Full Code Here

  }
 
  @Test
  public void testFindLabelsPossibleFromSuperTypes() {
    FusionEnvironment<?> env = new FusionEnvironment<TestAliasContext>(aliases, null, null, testH, new InferenceEnvironment(null), Variant.PRAGMATIC_VARIANT);
    FreeVars fv = new FreeVars().addVar(new SpecVar("a"), "SnaFu").addVar(new SpecVar("b"), "Baz");
    ConsList<Binding> list = ConsList.empty();
   
    list = ConsList.cons(new Binding(new SpecVar("a"), vars[3]), list);
    list = ConsList.cons(new Binding(new SpecVar("b"), vars[4]), list);
   
View Full Code Here

  }

  @Test
  public void testFindLabelsDefAndPoss() {
    FusionEnvironment<?> env = new FusionEnvironment<TestAliasContext>(aliases, null, null, testH, new InferenceEnvironment(null), Variant.PRAGMATIC_VARIANT);
    FreeVars fv = new FreeVars().addVar(new SpecVar("a"), "SnaFu").addVar(new SpecVar("b"), "Bazar");
    ConsList<Binding> list = ConsList.empty();
   
    list = ConsList.cons(new Binding(new SpecVar("a"), vars[2]), list);
    list = ConsList.cons(new Binding(new SpecVar("b"), vars[4]), list);
   
View Full Code Here

TOP

Related Classes of edu.cmu.cs.fusion.constraint.FreeVars

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.