diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-04-30 10:09:38 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-04-30 10:09:38 -0700 |
commit | 471839dad7e953fdd88902e03ddb55c02377ad44 (patch) | |
tree | 14d6e855e0d6a16fa1e3f32af84fde61585c8023 /057shape_shifting_container.cc | |
parent | 841387aea82a398e86871c54132bb5d6b19ddca4 (diff) | |
download | mu-471839dad7e953fdd88902e03ddb55c02377ad44.tar.gz |
2889
Diffstat (limited to '057shape_shifting_container.cc')
-rw-r--r-- | 057shape_shifting_container.cc | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/057shape_shifting_container.cc b/057shape_shifting_container.cc index 1b9d51b7..fa587595 100644 --- a/057shape_shifting_container.cc +++ b/057shape_shifting_container.cc @@ -247,9 +247,9 @@ def main [ :(before "End element_type Special-cases") if (contains_type_ingredient(element)) { - if (!base.type->right) - raise << "illegal type " << names_to_string(base.type) << " seems to be missing a type ingredient or three\n" << end(); - replace_type_ingredients(element.type, base.type->right, info); + if (!type->right) + raise << "illegal type " << names_to_string(type) << " seems to be missing a type ingredient or three\n" << end(); + replace_type_ingredients(element.type, type->right, info); } :(code) @@ -353,7 +353,7 @@ void test_replace_type_ingredients_entire() { " y:number\n" "]\n"); reagent callsite("x:foo:point"); - reagent element = element_type(callsite, 0); + reagent element = element_type(callsite.type, 0); CHECK_EQ(element.name, "x"); CHECK_EQ(element.type->name, "point"); CHECK(!element.type->right); @@ -367,7 +367,7 @@ void test_replace_type_ingredients_tail() { " x:foo:_elem\n" "]\n"); reagent callsite("x:bar:point"); - reagent element = element_type(callsite, 0); + reagent element = element_type(callsite.type, 0); CHECK_EQ(element.name, "x"); CHECK_EQ(element.type->name, "foo"); CHECK_EQ(element.type->right->name, "point"); @@ -382,7 +382,7 @@ void test_replace_type_ingredients_head_tail_multiple() { " x:foo:_elem\n" "]\n"); reagent callsite("x:bar:address:array:character"); - reagent element = element_type(callsite, 0); + reagent element = element_type(callsite.type, 0); CHECK_EQ(element.name, "x"); CHECK_EQ(element.type->name, "foo"); CHECK_EQ(element.type->right->name, "address"); @@ -399,7 +399,7 @@ void test_replace_type_ingredients_head_middle() { " x:foo:_elem:number\n" "]\n"); reagent callsite("x:bar:address"); - reagent element = element_type(callsite, 0); + reagent element = element_type(callsite.type, 0); CHECK_EQ(element.name, "x"); CHECK(element.type) CHECK_EQ(element.type->name, "foo"); @@ -416,11 +416,11 @@ void test_replace_last_type_ingredient_with_multiple() { " y:_b\n" "]\n"); reagent callsite("{f: (foo number (address array character))}"); - reagent element1 = element_type(callsite, 0); + reagent element1 = element_type(callsite.type, 0); CHECK_EQ(element1.name, "x"); CHECK_EQ(element1.type->name, "number"); CHECK(!element1.type->right); - reagent element2 = element_type(callsite, 1); + reagent element2 = element_type(callsite.type, 1); CHECK_EQ(element2.name, "y"); CHECK_EQ(element2.type->name, "address"); CHECK_EQ(element2.type->right->name, "array"); @@ -435,17 +435,17 @@ void test_replace_middle_type_ingredient_with_multiple() { " z:_c\n" "]\n"); reagent callsite("{f: (foo number (address array character) boolean)}"); - reagent element1 = element_type(callsite, 0); + reagent element1 = element_type(callsite.type, 0); CHECK_EQ(element1.name, "x"); CHECK_EQ(element1.type->name, "number"); CHECK(!element1.type->right); - reagent element2 = element_type(callsite, 1); + reagent element2 = element_type(callsite.type, 1); CHECK_EQ(element2.name, "y"); CHECK_EQ(element2.type->name, "address"); CHECK_EQ(element2.type->right->name, "array"); CHECK_EQ(element2.type->right->right->name, "character"); CHECK(!element2.type->right->right->right); - reagent element3 = element_type(callsite, 2); + reagent element3 = element_type(callsite.type, 2); CHECK_EQ(element3.name, "z"); CHECK_EQ(element3.type->name, "boolean"); CHECK(!element3.type->right); @@ -457,7 +457,7 @@ void test_replace_middle_type_ingredient_with_multiple2() { " value:_value\n" "]\n"); reagent callsite("{f: (foo (address array character) number)}"); - reagent element = element_type(callsite, 0); + reagent element = element_type(callsite.type, 0); CHECK_EQ(element.name, "key"); CHECK_EQ(element.type->name, "address"); CHECK_EQ(element.type->right->name, "array"); @@ -475,7 +475,7 @@ void test_replace_middle_type_ingredient_with_multiple3() { " value:_value\n" "]\n"); reagent callsite("{f: (foo_table (address array character) number)}"); - reagent element = element_type(callsite, 0); + reagent element = element_type(callsite.type, 0); CHECK_EQ(element.name, "data"); CHECK_EQ(element.type->name, "address"); CHECK_EQ(element.type->right->name, "array"); |