@Test public void shouldTransformGuardCase() { transform( "module scotch.test", "fn x | True = 0", " | False = 1" ); shouldHavePattern("scotch.test.(#0)", asList(capture("fn", t(0)), capture("x", t(1))), conditional( unshuffled(literal(true)), unshuffled(literal(0)), conditional( unshuffled(literal(false)), unshuffled(literal(1)), apply(id("scotch.lang.raise", t(2)), literal("Incomplete guard"), t(3)), t(4) ), t(5) )); }
public DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap) { definition(null, RootDefinition.builder(), builder -> moduleMap.keySet().forEach( moduleName -> builder.withModule(transformModules(moduleName, moduleMap.get(moduleName))))); return createGraph(definitions).build(); }
SyntaxTransformer { public DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap) { definition(null, RootDefinition.builder(), builder -> moduleMap.keySet().forEach( moduleName -> builder.withModule(transformModules(moduleName, moduleMap.get(moduleName))))); return createGraph(definitions).build(); } }
SyntaxTransformer { public DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap) { definition(null, RootDefinition.builder(), builder -> moduleMap.keySet().forEach( moduleName -> builder.withModule(transformModules(moduleName, moduleMap.get(moduleName))))); return createGraph(definitions).build(); } SyntaxTransformer(SymbolResolver resolver, SymbolGenerator symbolGenerator); }
SyntaxTransformer { public DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap) { definition(null, RootDefinition.builder(), builder -> moduleMap.keySet().forEach( moduleName -> builder.withModule(transformModules(moduleName, moduleMap.get(moduleName))))); return createGraph(definitions).build(); } SyntaxTransformer(SymbolResolver resolver, SymbolGenerator symbolGenerator); DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap); }
SyntaxTransformer { public DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap) { definition(null, RootDefinition.builder(), builder -> moduleMap.keySet().forEach( moduleName -> builder.withModule(transformModules(moduleName, moduleMap.get(moduleName))))); return createGraph(definitions).build(); } SyntaxTransformer(SymbolResolver resolver, SymbolGenerator symbolGenerator); DefinitionGraph transform(Map<String, List<ModuleContext>> moduleMap);  }