mirror of
https://github.com/cincheo/jsweet.git
synced 2025-12-15 07:19:22 +00:00
fixes for custom adapters
This commit is contained in:
parent
d88a80c3cc
commit
c92267bcd6
@ -53,6 +53,7 @@ import org.jsweet.transpiler.model.CaseElement;
|
|||||||
import org.jsweet.transpiler.model.TypeCastElement;
|
import org.jsweet.transpiler.model.TypeCastElement;
|
||||||
import org.jsweet.transpiler.model.CompilationUnitElement;
|
import org.jsweet.transpiler.model.CompilationUnitElement;
|
||||||
import org.jsweet.transpiler.model.ExtendedElement;
|
import org.jsweet.transpiler.model.ExtendedElement;
|
||||||
|
import org.jsweet.transpiler.model.ExtendedElementFactory;
|
||||||
import org.jsweet.transpiler.model.ForeachLoopElement;
|
import org.jsweet.transpiler.model.ForeachLoopElement;
|
||||||
import org.jsweet.transpiler.model.IdentifierElement;
|
import org.jsweet.transpiler.model.IdentifierElement;
|
||||||
import org.jsweet.transpiler.model.ImportElement;
|
import org.jsweet.transpiler.model.ImportElement;
|
||||||
@ -580,6 +581,13 @@ public class PrinterAdapter {
|
|||||||
return printer.getParentElement();
|
return printer.getParentElement();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets currently scanned element.
|
||||||
|
*/
|
||||||
|
public final ExtendedElement getCurrentElement() {
|
||||||
|
return ExtendedElementFactory.INSTANCE.create(printer.getCurrent());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the parent element in the printer's scanning stack.
|
* Gets the parent element in the printer's scanning stack.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -4,4 +4,6 @@ public interface VariableElement extends ExtendedElement, javax.lang.model.eleme
|
|||||||
|
|
||||||
javax.lang.model.element.VariableElement getStandardElement();
|
javax.lang.model.element.VariableElement getStandardElement();
|
||||||
|
|
||||||
|
ExtendedElement getVariableTypeTree();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -70,6 +70,16 @@ public class ExtendedElementSupport<T extends JCTree> implements ExtendedElement
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("rawtypes")
|
||||||
|
@Override
|
||||||
|
public boolean equals(Object obj) {
|
||||||
|
if (!(obj instanceof ExtendedElementSupport)) {
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
return this.tree == ((ExtendedElementSupport)obj).tree;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int hashCode() {
|
public int hashCode() {
|
||||||
return tree.hashCode();
|
return tree.hashCode();
|
||||||
|
|||||||
@ -12,6 +12,8 @@ import javax.lang.model.element.Modifier;
|
|||||||
import javax.lang.model.element.Name;
|
import javax.lang.model.element.Name;
|
||||||
import javax.lang.model.type.TypeMirror;
|
import javax.lang.model.type.TypeMirror;
|
||||||
|
|
||||||
|
import org.jsweet.transpiler.model.ExtendedElement;
|
||||||
|
import org.jsweet.transpiler.model.ExtendedElementFactory;
|
||||||
import org.jsweet.transpiler.model.VariableElement;
|
import org.jsweet.transpiler.model.VariableElement;
|
||||||
|
|
||||||
import com.sun.tools.javac.tree.JCTree.JCVariableDecl;
|
import com.sun.tools.javac.tree.JCTree.JCVariableDecl;
|
||||||
@ -82,4 +84,9 @@ public class VariableElementSupport extends ExtendedElementSupport<JCVariableDec
|
|||||||
return tree.sym.getConstantValue();
|
return tree.sym.getConstantValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ExtendedElement getVariableTypeTree() {
|
||||||
|
return ExtendedElementFactory.INSTANCE.create(tree.vartype);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user