diff --git a/src/models/meta/MetaRDLTerm.java b/src/models/meta/MetaRDLTerm.java index 5ddf77f..ae79d60 100644 --- a/src/models/meta/MetaRDLTerm.java +++ b/src/models/meta/MetaRDLTerm.java @@ -13,6 +13,7 @@ protected static enum TermType { META_DEPENDENCY, + META_DEPENDENCY_LIST, META_DEPENDENCY_VARIABLE, META_DEPENDENCY_TERM, META_DEPENDENCY_TERM_VARIABLE, @@ -53,7 +54,7 @@ public MetaRDLTerm(MetaRDLTerm dependency) { super(new Symbol(":", 1), dependency.getOrder() - 1); addChild(dependency); - this.termType = TermType.META_DEPENDENCY; + this.termType = TermType.META_DEPENDENCY_LIST; } //dependency term @@ -130,11 +131,50 @@ @Override public String toString() { - return null; + switch(termType) { + case META_DEPENDENCY: + return "[" + getChild(0).toString() + " : " + getChild(1).toString() + "]"; + case META_DEPENDENCY_LIST: + return "[" + getChild(0).toString() + "]"; + case META_DEPENDENCY_TERM: + return "[" + getChild(0).toString() + " : " + getChild(1).toString() + " -> " + getChild(2).toString() + "]"; + default: + return ""; + } } @Override public String toStringWithOrder() { + switch(termType) { + case META_DEPENDENCY: + return "[" + ((RDLTerm) getChild(0)).toStringWithOrder() + " : " + ((RDLTerm) getChild(1)).toStringWithOrder() + "]"; + case META_DEPENDENCY_LIST: + return "[" + ((RDLTerm) getChild(0)).toStringWithOrder() + "]"; + case META_DEPENDENCY_TERM: + return "[" + ((RDLTerm) getChild(0)).toStringWithOrder() + " : " + + ((RDLTerm) getChild(1)).toStringWithOrder() + " -> " + ((RDLTerm) getChild(2)).toStringWithOrder() + "]"; + default: + return ""; + } + } + + @Override + public boolean equals(Object another) { + if(! (another instanceof MetaRDLTerm)) { + return false; + } + return false; + } + + @Override + public int hashCode() { + // TODO 自動生成されたメソッド・スタブ + return 0; + } + + @Override + public Object clone() { + // TODO 自動生成されたメソッド・スタブ return null; }