| summaryrefslogtreecommitdiff |
diff options
| author | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-08-03 15:28:17 +0200 |
|---|---|---|
| committer | Nathanael Sensfelder <SpamShield0@MultiAgentSystems.org> | 2017-08-03 15:28:17 +0200 |
| commit | 90bb7e959496c3a12bebe055f6344b9f06f22809 (patch) | |
| tree | 6635decc697d91c8cba6da9db8959b706ad9842f /sol-pretty-printer/src/Strings.java | |
| parent | c5a23ef9d6ab1e89b85016831fc8b2431f68f87f (diff) | |
Improving clarity through better Makefiles.
Diffstat (limited to 'sol-pretty-printer/src/Strings.java')
| -rw-r--r-- | sol-pretty-printer/src/Strings.java | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/sol-pretty-printer/src/Strings.java b/sol-pretty-printer/src/Strings.java new file mode 100644 index 0000000..31f6145 --- /dev/null +++ b/sol-pretty-printer/src/Strings.java @@ -0,0 +1,89 @@ +import java.io.FileNotFoundException; +import java.io.IOException; + +import java.util.Map; +import java.util.HashMap; + +public class Strings +{ + private static final Map<String, String> FROM_ID; + + static + { + FROM_ID = new HashMap<String, String>(); + } + + private static void add_mapping (final String id, final String str) + { + FROM_ID.put(id, str); + } + + public static String get_string_from_id (final String id) + { + return FROM_ID.get(id); + } + + private static boolean handle_mapping_instruction (final String... instr) + { + if (instr.length < 3) + { + return false; + } + + if (!instr[0].equals("string->instr")) + { + return false; + } + + add_mapping(instr[2], instr[1]); + + return true; + } + + public static boolean load_file (final String filename) + throws FileNotFoundException + { + final QuickParser qp; + String[] input; + + qp = new QuickParser(filename); + + for (;;) + { + try + { + input = qp.parse_line(); + + if (input == null) + { + qp.finalize(); + + return false; + } + else if (input.length == 0) + { + qp.finalize(); + + break; + } + } + catch (final IOException e) + { + System.err.println + ( + "[E] IO error while parsing file \"" + + filename + + "\":" + /* FIXME: can be null */ + + e.getMessage() + ); + + return false; + } + + handle_mapping_instruction(input); + } + + return true; + } +} |


