Commit 741911d6 authored by Philip Makedonski's avatar Philip Makedonski
Browse files

+ additional debug operations

parent de3764fb
Loading
Loading
Loading
Loading
+32 −3
Original line number Diff line number Diff line
//Debugging operations
operation Any prefix() : String {
	return self.type().name+":  "+self.qualifiedName() + " ";
	return self.type().name+":\t"+self.qualifiedName().trim() + ":\n\t";
//	return self.type().name+":  "+self.targetElement() + " ";
//    return self.type().name+":\t"+self.qualifiedName + ":\t";
}

operation Any debugCheck() : Boolean {
@@ -8,6 +10,33 @@ operation Any debugCheck() : Boolean {
    return true;
}

operation Any getNodeText() : String {
    var bridge = new Native("org.etsi.mts.tdl.constraints.evl.XtextBridge");
    return bridge.getTextFor(self);
}

operation Any debugPassthrough(hint: String) : Any {
    ("  DEBUG: "+hint+": "+self).println();
    ("  DEBUG: "+hint+": "+self.getNodeText()).println();
    return self;
}

operation Any debugExtensions() : Boolean {
    (
    ""+self
    +"\n  "+self.container()
    +"\n  "+self.container().type()
    +"\n  "+self.extending
    +"\n  "+self.extending.type()
//    +"\n  "+self.container.oclIsTypeOf(self.extending.oclType())
    +"\n  "+(self.container.oclType() == self.extending.oclType())
    //.oclIsTypeOf(self.extending.oclType())
    
    ).println();
    ("  DEBUG: "+self).println();
    return true;
}

operation Any debugAnnotations() : Boolean {
	self.println();
	("  Annotations: "+self.annotation).println();