aboutsummaryrefslogtreecommitdiffstats
path: root/main/core/runtime/builtins
diff options
context:
space:
mode:
authorJan Tuomi <jans.tuomi@gmail.com>2016-06-28 21:09:43 +0300
committerJan Tuomi <jans.tuomi@gmail.com>2016-07-26 19:47:12 +0300
commit8f84c00978dc05007873a9fe1de6a18511dc3cf8 (patch)
tree39fead540e22addee40b95b68db08cbea620745b /main/core/runtime/builtins
parent48dcd488054024d98fe1e659a4029630130d1d35 (diff)
Restructure project for use with maven
Diffstat (limited to 'main/core/runtime/builtins')
-rw-r--r--main/core/runtime/builtins/AsIntBuiltinFunction.java52
-rw-r--r--main/core/runtime/builtins/BuiltinManager.java30
-rw-r--r--main/core/runtime/builtins/ConcatBuiltinFunction.java38
-rw-r--r--main/core/runtime/builtins/InBuiltinFunction.java38
-rw-r--r--main/core/runtime/builtins/OutBuiltinFunction.java32
5 files changed, 0 insertions, 190 deletions
diff --git a/main/core/runtime/builtins/AsIntBuiltinFunction.java b/main/core/runtime/builtins/AsIntBuiltinFunction.java
deleted file mode 100644
index 210e1e4..0000000
--- a/main/core/runtime/builtins/AsIntBuiltinFunction.java
+++ /dev/null
@@ -1,52 +0,0 @@
-package com.jantuomi.interpreter.main.core.runtime.builtins;
-
-import com.jantuomi.interpreter.main.core.parser.datatype.BooleanDataContainer;
-import com.jantuomi.interpreter.main.core.parser.datatype.DataContainer;
-import com.jantuomi.interpreter.main.core.parser.datatype.IntegerDataContainer;
-import com.jantuomi.interpreter.main.core.parser.datatype.StringDataContainer;
-import com.jantuomi.interpreter.main.core.runtime.Function;
-import com.jantuomi.interpreter.main.exception.InterpreterException;
-
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Created by jan on 21.6.2016.
- */
-public class AsIntBuiltinFunction extends Function {
- public AsIntBuiltinFunction() {
- super(
- Arrays.asList("expression"),
- null
- );
- }
-
- @Override
- public String getName() {
- return "as_int";
- }
-
- @Override
- public DataContainer evaluate(List<DataContainer> params) throws InterpreterException {
- if (params.size() != 1) {
- return null;
- }
- DataContainer param = params.get(0);
- int i = 0;
- if (param instanceof StringDataContainer) {
- try {
- i = Integer.parseInt(((StringDataContainer) param).getData());
- }
- catch (NumberFormatException ex) {
- return null;
- }
- }
- else if (param instanceof IntegerDataContainer) {
- i = ((IntegerDataContainer) param).getData();
- }
- else if (param instanceof BooleanDataContainer) {
- i = ((BooleanDataContainer) param).getData() ? 1 : 0;
- }
- return new IntegerDataContainer(i);
- }
-}
diff --git a/main/core/runtime/builtins/BuiltinManager.java b/main/core/runtime/builtins/BuiltinManager.java
deleted file mode 100644
index c6c9e26..0000000
--- a/main/core/runtime/builtins/BuiltinManager.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.jantuomi.interpreter.main.core.runtime.builtins;
-
-import com.jantuomi.interpreter.main.core.runtime.Function;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Created by jan on 21.6.2016.
- */
-public class BuiltinManager {
- private static BuiltinManager instance = new BuiltinManager();
-
- public static BuiltinManager getInstance() {
- return instance;
- }
-
- private List<Function> builtins = new ArrayList<>();
-
- private BuiltinManager() {
- builtins.add(new OutBuiltinFunction());
- builtins.add(new InBuiltinFunction());
- builtins.add(new ConcatBuiltinFunction());
- builtins.add(new AsIntBuiltinFunction());
- }
-
- public List<Function> getBuiltins() {
- return builtins;
- }
-}
diff --git a/main/core/runtime/builtins/ConcatBuiltinFunction.java b/main/core/runtime/builtins/ConcatBuiltinFunction.java
deleted file mode 100644
index 5f87a38..0000000
--- a/main/core/runtime/builtins/ConcatBuiltinFunction.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.jantuomi.interpreter.main.core.runtime.builtins;
-
-import com.jantuomi.interpreter.main.core.parser.datatype.DataContainer;
-import com.jantuomi.interpreter.main.core.parser.datatype.StringDataContainer;
-import com.jantuomi.interpreter.main.core.runtime.Function;
-import com.jantuomi.interpreter.main.exception.InterpreterException;
-
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Created by jan on 21.6.2016.
- */
-public class ConcatBuiltinFunction extends Function {
- public ConcatBuiltinFunction() {
- super(
- Arrays.asList("strings"),
- null
- );
- }
-
- @Override
- public String getName() {
- return "concat";
- }
-
- @Override
- public DataContainer evaluate(List<DataContainer> params) throws InterpreterException {
- StringBuilder sb = new StringBuilder();
- for (DataContainer d : params) {
- sb.append(d.getData());
- }
-
- return new StringDataContainer(
- sb.toString()
- );
- }
-}
diff --git a/main/core/runtime/builtins/InBuiltinFunction.java b/main/core/runtime/builtins/InBuiltinFunction.java
deleted file mode 100644
index 32d6b72..0000000
--- a/main/core/runtime/builtins/InBuiltinFunction.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.jantuomi.interpreter.main.core.runtime.builtins;
-
-import com.jantuomi.interpreter.main.core.parser.datatype.DataContainer;
-import com.jantuomi.interpreter.main.core.parser.datatype.StringDataContainer;
-import com.jantuomi.interpreter.main.core.runtime.Function;
-import com.jantuomi.interpreter.main.exception.InterpreterException;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Scanner;
-
-/**
- * Created by jan on 21.6.2016.
- */
-public class InBuiltinFunction extends Function {
- public InBuiltinFunction() {
- super(
- Arrays.asList("expression"),
- null
- );
- }
-
- @Override
- public String getName() {
- return "in";
- }
-
- @Override
- public DataContainer evaluate(List<DataContainer> params) throws InterpreterException {
- if (params.size() > 0) {
- DataContainer param = params.get(0);
- System.out.print(param.getData().toString());
- }
- Scanner in = new Scanner(System.in);
- String userInput = in.nextLine();
- return new StringDataContainer(userInput);
- }
-}
diff --git a/main/core/runtime/builtins/OutBuiltinFunction.java b/main/core/runtime/builtins/OutBuiltinFunction.java
deleted file mode 100644
index 0611a83..0000000
--- a/main/core/runtime/builtins/OutBuiltinFunction.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package com.jantuomi.interpreter.main.core.runtime.builtins;
-
-import com.jantuomi.interpreter.main.core.parser.datatype.DataContainer;
-import com.jantuomi.interpreter.main.core.runtime.Function;
-import com.jantuomi.interpreter.main.exception.InterpreterException;
-
-import java.util.Arrays;
-import java.util.List;
-
-/**
- * Created by jan on 21.6.2016.
- */
-public class OutBuiltinFunction extends Function {
- public OutBuiltinFunction() {
- super(
- Arrays.asList("expression"),
- null
- );
- }
-
- @Override
- public String getName() {
- return "out";
- }
-
- @Override
- public DataContainer evaluate(List<DataContainer> params) throws InterpreterException {
- DataContainer param = params.get(0);
- System.out.println(param.getData().toString());
- return param;
- }
-}