diff --git a/html/fcl/tipper.js b/html/fcl/tipper.js index 65be240..4688cef 100644 --- a/html/fcl/tipper.js +++ b/html/fcl/tipper.js @@ -1,7 +1,5 @@ //-------------------------------------------------------------------------------- // Code generated by jFuzzyLogic -// jFuzzyLogic Version : JFuzzyLogic 4.0 (build 2022-05-12), by Pablo Cingolani -// jFuzzyLogic created by Pablo Cingolani //-------------------------------------------------------------------------------- function ruleAccumulationMethod_max(defuzzifierValue, valueToAggregate) { @@ -205,4 +203,6 @@ function main(food, service) { // Show results tipper.print(); + + return [tipper.tip]; } diff --git a/out/artifacts/jFuzzyLogic_jar/jFuzzyLogic.jar b/out/artifacts/jFuzzyLogic_jar/jFuzzyLogic.jar index 685a68e..5c7a3aa 100644 Binary files a/out/artifacts/jFuzzyLogic_jar/jFuzzyLogic.jar and b/out/artifacts/jFuzzyLogic_jar/jFuzzyLogic.jar differ diff --git a/src/main/java/net/sourceforge/jFuzzyLogic/FIS.java b/src/main/java/net/sourceforge/jFuzzyLogic/FIS.java index fae55c3..5710c4b 100644 --- a/src/main/java/net/sourceforge/jFuzzyLogic/FIS.java +++ b/src/main/java/net/sourceforge/jFuzzyLogic/FIS.java @@ -3,11 +3,7 @@ package net.sourceforge.jFuzzyLogic; import java.io.FileReader; import java.io.IOException; import java.io.InputStream; -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; +import java.util.*; import net.sourceforge.jFuzzyLogic.fcl.FclLexer; import net.sourceforge.jFuzzyLogic.fcl.FclObject; @@ -347,8 +343,6 @@ public class FIS extends FclObject implements Iterable, CompileCp out.append("//--------------------------------------------------------------------------------\n"); out.append("// Code generated by jFuzzyLogic\n"); - out.append("// jFuzzyLogic Version : " + JFuzzyLogic.VERSION + " \n"); - out.append("// jFuzzyLogic created by Pablo Cingolani\n"); out.append("//--------------------------------------------------------------------------------\n\n"); // Sort function blocks by name @@ -443,6 +437,28 @@ public class FIS extends FclObject implements Iterable, CompileCp out.append("\t// Show results\n"); for (String name : fbNames) out.append("\t" + name + ".print();\n"); + + out.append("\n\treturn ["); + for (String name : fbNames) { + FunctionBlock functionBlock = getFunctionBlock(name); + int k = 0; + List outs = new ArrayList<>(); + for (Variable var : functionBlock.variablesSorted()) { + if (var.isOutput()) { + outs.add(var); + } + } + for (Variable var : outs) { + if (var.isOutput()) { + out.append(name + "." + var.getName()); + if (k < outs.size() - 1) { + out.append(", "); + } + k++; + } + } + } + out.append("];\n"); out.append("}"); return out.toString();