/** * */ package com.sap.ide.cts.parser.incremental.antlr; import java.lang.reflect.InvocationTargetException; import org.antlr.runtime.CharStream; import org.eclipse.emf.common.notify.Adapter; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.common.util.TreeIterator; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EOperation; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.emf.ecore.resource.Resource; import com.sap.furcas.metamodel.FURCAS.TCS.SequenceElement; import com.sap.furcas.metamodel.FURCAS.textblocks.DocumentNode; import com.sap.furcas.metamodel.FURCAS.textblocks.LexedToken; import com.sap.furcas.metamodel.FURCAS.textblocks.TextBlock; import com.sap.furcas.metamodel.FURCAS.textblocks.Version; import com.sap.furcas.runtime.parser.ANTLR3LocationToken; /** * */ public class LexedTokenWrapper implements ANTLR3LocationToken, LexedToken { private final LexedToken wrappedToken; private int channel = DEFAULT_CHANNEL; private int positionInLine = -1; private int tokenIndex = -1; public LexedTokenWrapper(LexedToken wrappedToken) { this.wrappedToken = wrappedToken; } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#getEndColumn() */ @Override public int getEndColumn() { return 0; } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#getEndLine() */ @Override public int getEndLine() { return 0; } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#getStartIndex() */ @Override public int getStartIndex() { return wrappedToken.getOffset(); } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#getStopIndex() */ @Override public int getStopIndex() { return wrappedToken.getOffset() + wrappedToken.getLength(); } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#setEndColumn(int) */ @Override public void setEndColumn(int endColumn) { } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#setEndLine(int) */ @Override public void setEndLine(int endLine) { } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#setStartIndex(int) */ @Override public void setStartIndex(int arg0) { wrappedToken.setOffset(arg0); } /* * (non-Javadoc) * * @see com.sap.mi.textual.grammar.antlr3.ANTLR3LocationToken#setStopIndex(int) */ @Override public void setStopIndex(int arg0) { // TODO change ANTLR3LocationToken Interface if required at all // (Probably should never happen) throw new RuntimeException("Wrapper does not support setting of stopIndex"); } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#getChannel() */ @Override public int getChannel() { return channel; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#getCharPositionInLine() */ @Override public int getCharPositionInLine() { return positionInLine; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#getLine() */ @Override public int getLine() { return 0; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#getText() */ @Override public String getText() { return getValue(); } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#getTokenIndex() */ @Override public int getTokenIndex() { return tokenIndex; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#getType() */ @Override public int getType() { return wrappedToken.getType(); } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#setChannel(int) */ @Override public void setChannel(int channel) { this.channel = channel; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#setCharPositionInLine(int) */ @Override public void setCharPositionInLine(int pos) { this.positionInLine = pos; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#setLine(int) */ @Override public void setLine(int line) { } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#setText(java.lang.String) */ @Override public void setText(String text) { wrappedToken.setValue(text); } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#setTokenIndex(int) */ @Override public void setTokenIndex(int index) { this.tokenIndex = index; } /* * (non-Javadoc) * * @see org.antlr.runtime.Token#setType(int) */ @Override public void setType(int ttype) { wrappedToken.setType(ttype); } // /* // * (non-Javadoc) // * // * @see textblocks.LexedToken#getParentFunctionCall() // */ // @Override // public FunctionCall getParentFunctionCall() { // // return wrappedToken.getParentFunctionCall(); // } /* * (non-Javadoc) * * @see textblocks.LexedToken#getSequenceElement() */ @Override public SequenceElement getSequenceElement() { return wrappedToken.getSequenceElement(); } // /* // * (non-Javadoc) // * // * @see textblocks.LexedToken#setParentFunctionCall(tcs.FunctionCall) // */ // @Override // public void setParentFunctionCall(FunctionCall newValue) // { // wrappedToken.setParentFunctionCall(newValue); // // } /* * (non-Javadoc) * * @see textblocks.LexedToken#setSequenceElement(tcs.SequenceElement) */ @Override public void setSequenceElement(SequenceElement newValue) { wrappedToken.setSequenceElement(newValue); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#getLookahead() */ @Override public int getLookahead() { return wrappedToken.getLookahead(); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#getLookback() */ @Override public int getLookback() { return wrappedToken.getLookback(); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#getParentBlock() */ @Override public TextBlock getParent() { return wrappedToken.getParent(); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#getState() */ @Override public int getState() { return wrappedToken.getState(); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#getValue() */ @Override public String getValue() { return wrappedToken.getValue(); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#setLookahead(int) */ @Override public void setLookahead(int newValue) { wrappedToken.setLookahead(newValue); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#setLookback(int) */ @Override public void setLookback(int newValue) { wrappedToken.setLookback(newValue); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#setParentBlock(textblocks.TextBlock) */ @Override public void setParent(TextBlock newValue) { wrappedToken.setParent(newValue); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#setState(int) */ @Override public void setState(int newValue) { wrappedToken.setState(newValue); } /* * (non-Javadoc) * * @see textblocks.AbstractToken#setValue(java.lang.String) */ @Override public void setValue(String newValue) { wrappedToken.setValue(newValue); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#getAbsoluteOffset() */ @Override public int getAbsoluteOffset() { return wrappedToken.getAbsoluteOffset(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#getLength() */ @Override public int getLength() { return wrappedToken.getLength(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#getOffset() */ @Override public int getOffset() { return wrappedToken.getOffset(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#getOtherVersions() */ @Override public EList<DocumentNode> getOtherVersions() { return wrappedToken.getOtherVersions(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#getVersion() */ @Override public Version getVersion() { return wrappedToken.getVersion(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#isChildrenChanged() */ @Override public boolean isChildrenChanged() { return wrappedToken.isChildrenChanged(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#isOffsetRelative() */ @Override public boolean isOffsetRelative() { return wrappedToken.isOffsetRelative(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#isRelexingNeeded() */ @Override public boolean isRelexingNeeded() { return wrappedToken.isRelexingNeeded(); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#setChildrenChanged(boolean) */ @Override public void setChildrenChanged(boolean newValue) { wrappedToken.setChildrenChanged(newValue); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#setLength(int) */ @Override public void setLength(int newValue) { wrappedToken.setLength(newValue); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#setOffset(int) */ @Override public void setOffset(int newValue) { wrappedToken.setOffset(newValue); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#setOffsetRelative(boolean) */ @Override public void setOffsetRelative(boolean newValue) { wrappedToken.setOffsetRelative(newValue); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#setRelexingNeeded(boolean) */ @Override public void setRelexingNeeded(boolean newValue) { wrappedToken.setRelexingNeeded(newValue); } /* * (non-Javadoc) * * @see textblocks.DocumentNode#setVersion(textblocks.Version) */ @Override public void setVersion(Version newValue) { wrappedToken.setVersion(newValue); } @Override public boolean isOperator() { return wrappedToken.isOperator(); } @Override public void setOperator(boolean newValue) { wrappedToken.setOperator(newValue); } @Override public CharStream getInputStream() { // TODO Auto-generated method stub return null; } @Override public void setInputStream(CharStream input) { // TODO Auto-generated method stub } @Override public EList<EObject> getReferencedElements() { return wrappedToken.getReferencedElements(); } @Override public void setAbsoluteOffset(int value) { wrappedToken.setAbsoluteOffset(value); } @Override public EClass eClass() { return wrappedToken.eClass(); } @Override public Resource eResource() { return wrappedToken.eResource(); } @Override public EObject eContainer() { return wrappedToken.eContainer(); } @Override public EStructuralFeature eContainingFeature() { return wrappedToken.eContainingFeature(); } @Override public EReference eContainmentFeature() { return wrappedToken.eContainmentFeature(); } @Override public EList<EObject> eContents() { return wrappedToken.eContents(); } @Override public TreeIterator<EObject> eAllContents() { return wrappedToken.eAllContents(); } @Override public boolean eIsProxy() { return wrappedToken.eIsProxy(); } @Override public EList<EObject> eCrossReferences() { return wrappedToken.eCrossReferences(); } @Override public Object eGet(EStructuralFeature feature) { // TODO Auto-generated method stub return null; } @Override public Object eGet(EStructuralFeature feature, boolean resolve) { // TODO Auto-generated method stub return null; } @Override public void eSet(EStructuralFeature feature, Object newValue) { // TODO Auto-generated method stub } @Override public boolean eIsSet(EStructuralFeature feature) { // TODO Auto-generated method stub return false; } @Override public void eUnset(EStructuralFeature feature) { // TODO Auto-generated method stub } @Override public Object eInvoke(EOperation operation, EList<?> arguments) throws InvocationTargetException { // TODO Auto-generated method stub return null; } @Override public EList<Adapter> eAdapters() { // TODO Auto-generated method stub return null; } @Override public boolean eDeliver() { // TODO Auto-generated method stub return false; } @Override public void eSetDeliver(boolean deliver) { // TODO Auto-generated method stub } @Override public void eNotify(Notification notification) { // TODO Auto-generated method stub } }