/********************************************************************** * Copyright (c) 2002,2003 Rational Software Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Common Public License v0.5 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/cpl-v05.html * * Contributors: * IBM Rational Software - Initial API and implementation ***********************************************************************/ package org.eclipse.cdt.internal.core.parser.ast.complete; import org.eclipse.cdt.core.parser.ISourceElementRequestor; import org.eclipse.cdt.core.parser.ast.IASTASMDefinition; import org.eclipse.cdt.internal.core.parser.ast.Offsets; import org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol; /** * @author jcamelon * */ public class ASTASMDefinition extends ASTAnonymousDeclaration implements IASTASMDefinition { private Offsets offsets = new Offsets(); private final String assembly; /** * */ public ASTASMDefinition( IContainerSymbol scope, String assembly, int first, int last ) { super( scope ); this.assembly = assembly; setStartingOffset(first); setEndingOffset(last); } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ast.IASTASMDefinition#getBody() */ public String getBody() { return assembly; } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ast.IASTOffsetableElement#setStartingOffset(int) */ public void setStartingOffset(int o) { offsets.setStartingOffset(o); } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ast.IASTOffsetableElement#setEndingOffset(int) */ public void setEndingOffset(int o) { offsets.setEndingOffset(o); } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ast.IASTOffsetableElement#getStartingOffset() */ public int getStartingOffset() { return offsets.getStartingOffset(); } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ast.IASTOffsetableElement#getEndingOffset() */ public int getEndingOffset() { return offsets.getEndingOffset(); } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#acceptElement(org.eclipse.cdt.core.parser.ISourceElementRequestor) */ public void acceptElement(ISourceElementRequestor requestor) { try { requestor.acceptASMDefinition(this); } catch (Exception e) { /* do nothing */ } } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#enterScope(org.eclipse.cdt.core.parser.ISourceElementRequestor) */ public void enterScope(ISourceElementRequestor requestor) { } /* (non-Javadoc) * @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#exitScope(org.eclipse.cdt.core.parser.ISourceElementRequestor) */ public void exitScope(ISourceElementRequestor requestor) { } }