From c3541de87180a9de734fcabf681c904cb2e40368 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Sat, 2 Mar 2019 15:32:20 -0500 Subject: [PATCH] Add ExpressionConvertible --- .gitignore | 5 +++++ build.gradle | 9 ++++----- local.properties | 11 ----------- settings.gradle | 3 --- src/main/java/no/birkett/kiwi/Expression.java | 7 ++++++- .../java/no/birkett/kiwi/ExpressionConvertible.java | 10 ++++++++++ src/main/java/no/birkett/kiwi/Term.java | 7 ++++++- src/main/java/no/birkett/kiwi/Variable.java | 7 ++++++- 8 files changed, 37 insertions(+), 22 deletions(-) delete mode 100644 local.properties create mode 100644 src/main/java/no/birkett/kiwi/ExpressionConvertible.java diff --git a/.gitignore b/.gitignore index 2fc6363..ec665e4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,7 @@ .idea/ /build +.gradle/ +*.iml +*.ipr +*.iws +out/ \ No newline at end of file diff --git a/build.gradle b/build.gradle index a759d2b..b7247c8 100644 --- a/build.gradle +++ b/build.gradle @@ -1,14 +1,13 @@ apply plugin: 'java' +apply plugin: 'idea' +apply from: "https://github.com/shadowfacts/maven/raw/master/maven.gradle" sourceCompatibility = 1.7 targetCompatibility = 1.7 +group = "no.birkett" +archivesBaseName = "kiwi" version = '1.0' -task wrapper(type: Wrapper) { - gradleVersion = '1.9' - distributionUrl = 'http://services.gradle.org/distributions/gradle-1.9-all.zip' -} - repositories { mavenCentral() } diff --git a/local.properties b/local.properties deleted file mode 100644 index 0cb7df1..0000000 --- a/local.properties +++ /dev/null @@ -1,11 +0,0 @@ -## This file is automatically generated by Android Studio. -# Do not modify this file -- YOUR CHANGES WILL BE ERASED! -# -# This file must *NOT* be checked into Version Control Systems, -# as it contains information specific to your local configuration. -# -# Location of the SDK. This is only used by Gradle. -# For customization when using a Version Control System, please read the -# header note. -#Sat Jan 31 12:43:25 CET 2015 -sdk.dir=/Users/alex/sdk diff --git a/settings.gradle b/settings.gradle index 5c2fc38..143c7bf 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,4 +1 @@ rootProject.name = 'kiwi-java' - -include 'lib' - diff --git a/src/main/java/no/birkett/kiwi/Expression.java b/src/main/java/no/birkett/kiwi/Expression.java index c83399c..78a36cc 100644 --- a/src/main/java/no/birkett/kiwi/Expression.java +++ b/src/main/java/no/birkett/kiwi/Expression.java @@ -6,7 +6,7 @@ import java.util.List; /** * Created by alex on 30/01/15. */ -public class Expression { +public class Expression implements ExpressionConvertible { private List terms; @@ -69,6 +69,11 @@ public class Expression { return terms.size() == 0; } + @Override + public Expression toExpression() { + return this; + } + @Override public String toString() { StringBuilder sb = new StringBuilder(); diff --git a/src/main/java/no/birkett/kiwi/ExpressionConvertible.java b/src/main/java/no/birkett/kiwi/ExpressionConvertible.java new file mode 100644 index 0000000..4933d9e --- /dev/null +++ b/src/main/java/no/birkett/kiwi/ExpressionConvertible.java @@ -0,0 +1,10 @@ +package no.birkett.kiwi; + +/** + * @author shadowfacts + */ +public interface ExpressionConvertible { + + Expression toExpression(); + +} diff --git a/src/main/java/no/birkett/kiwi/Term.java b/src/main/java/no/birkett/kiwi/Term.java index cb369cf..3fa3e25 100644 --- a/src/main/java/no/birkett/kiwi/Term.java +++ b/src/main/java/no/birkett/kiwi/Term.java @@ -3,7 +3,7 @@ package no.birkett.kiwi; /** * Created by alex on 30/01/15. */ -public class Term { +public class Term implements ExpressionConvertible { private Variable variable; double coefficient; @@ -37,6 +37,11 @@ public class Term { return coefficient * variable.getValue(); } + @Override + public Expression toExpression() { + return new Expression(this); + } + @Override public String toString() { return "variable: (" + variable + ") coefficient: " + coefficient; diff --git a/src/main/java/no/birkett/kiwi/Variable.java b/src/main/java/no/birkett/kiwi/Variable.java index 1ca44b6..bd4e7d4 100644 --- a/src/main/java/no/birkett/kiwi/Variable.java +++ b/src/main/java/no/birkett/kiwi/Variable.java @@ -3,7 +3,7 @@ package no.birkett.kiwi; /** * Created by alex on 30/01/15. */ -public class Variable { +public class Variable implements ExpressionConvertible { private String name; @@ -28,6 +28,11 @@ public class Variable { return name; } + @Override + public Expression toExpression() { + return new Expression(new Term(this)); + } + @Override public String toString() { return "name: " + name + " value: " + value;