[AsnEditor-CVS] ASN1EditorPlugin/javasrc/net/sourceforge/asneditor/model IASN.java,1.1,1.2, SymbolsF
Brought to you by:
bogdans10
From: Bogdan S. <bog...@us...> - 2005-05-06 14:55:03
|
Update of /cvsroot/asneditor/ASN1EditorPlugin/javasrc/net/sourceforge/asneditor/model In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3230/javasrc/net/sourceforge/asneditor/model Modified Files: IASN.java SymbolsFromModule.java ASNModel.java ASNModule.java Log Message: added start and end info for module, imports, exports, values and types added resource info for each module Index: ASNModel.java =================================================================== RCS file: /cvsroot/asneditor/ASN1EditorPlugin/javasrc/net/sourceforge/asneditor/model/ASNModel.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** ASNModel.java 28 Feb 2005 20:52:02 -0000 1.2 --- ASNModel.java 6 May 2005 14:54:54 -0000 1.3 *************** *** 6,9 **** --- 6,10 ---- import net.sourceforge.asneditor.editors.ASNEditor; + import org.eclipse.core.resources.IResource; import org.eclipse.jface.text.BadLocationException; import org.eclipse.jface.text.IDocument; *************** *** 13,17 **** public class ASNModel { ! private final Hashtable modules; private final ASNEditor editor; --- 14,18 ---- public class ASNModel { ! private final Hashtable modules, resources; private final ASNEditor editor; *************** *** 20,23 **** --- 21,25 ---- this.editor = editor; modules = new Hashtable(); + resources = new Hashtable(); } *************** *** 44,50 **** */ public boolean add(ASNModule module) { ! if ((module == null) || (module.getName() == null)) return false; modules.put(module.getName(), module); return true; } --- 46,54 ---- */ public boolean add(ASNModule module) { ! if ((module == null) || (module.getName() == null) ! || (module.getResource() == null)) return false; modules.put(module.getName(), module); + resources.put(module.getResource(), module); return true; } *************** *** 61,64 **** --- 65,78 ---- /** + * @param moduleResource + * @return the module read from the given moduleResource, or null if moduleResource is null. + */ + public ASNModule getModule(IResource moduleResource) { + if (moduleResource == null) + return null; + return (ASNModule) resources.get(moduleResource); + } + + /** * @param string * @return Index: IASN.java =================================================================== RCS file: /cvsroot/asneditor/ASN1EditorPlugin/javasrc/net/sourceforge/asneditor/model/IASN.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** IASN.java 24 Feb 2005 20:40:23 -0000 1.1 --- IASN.java 6 May 2005 14:54:54 -0000 1.2 *************** *** 13,17 **** public String name = null; private Position position = null; ! int line, column, length; abstract public String toString(); --- 13,17 ---- public String name = null; private Position position = null; ! int line, column, length, endLine, endColumn; abstract public String toString(); *************** *** 29,33 **** /** ! * @return Line position in text */ public int getLine() { --- 29,33 ---- /** ! * @return Single line text line position in document */ public int getLine() { *************** *** 36,40 **** /** ! * @return Column position in text */ public int getColumn() { --- 36,40 ---- /** ! * @return Single line text column position in document */ public int getColumn() { *************** *** 43,47 **** /** ! * @return Text length */ public int getLength() { --- 43,47 ---- /** ! * @return Single line text length */ public int getLength() { *************** *** 49,52 **** --- 49,65 ---- } + /** + * @return End line of multiline text + */ + public int getEndLine() { + return endLine; + } + + /** + * @return End column of multiline text + */ + public int getEndColumn() { + return endColumn; + } /** *************** *** 71,75 **** return ASNEditorPlugin.findOffset(line, column, viewer); } ! public void setToken(antlr.Token token) { if (token == null) --- 84,92 ---- return ASNEditorPlugin.findOffset(line, column, viewer); } ! ! /** ! * Reads the start & end position from the given token ! * @param token ! */ public void setToken(antlr.Token token) { if (token == null) *************** *** 78,81 **** --- 95,111 ---- column = token.getColumn(); length = token.getText().length(); + endLine = line; + endColumn = column; + } + + /** + * Reads the end position from the given token + * @param token + */ + public void setEndToken(antlr.Token token) { + if (token == null) + return; + endLine = token.getLine(); + endColumn = token.getColumn(); } } Index: SymbolsFromModule.java =================================================================== RCS file: /cvsroot/asneditor/ASN1EditorPlugin/javasrc/net/sourceforge/asneditor/model/SymbolsFromModule.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** SymbolsFromModule.java 17 Apr 2005 22:34:56 -0000 1.2 --- SymbolsFromModule.java 6 May 2005 14:54:54 -0000 1.3 *************** *** 41,44 **** --- 41,51 ---- return modref; } + + /** + * @return an iterator over the list of imported symbols + */ + public Iterator symbols() { + return symbolList.iterator(); + } } //********************************************* Index: ASNModule.java =================================================================== RCS file: /cvsroot/asneditor/ASN1EditorPlugin/javasrc/net/sourceforge/asneditor/model/ASNModule.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ASNModule.java 17 Apr 2005 22:34:56 -0000 1.4 --- ASNModule.java 6 May 2005 14:54:54 -0000 1.5 *************** *** 4,9 **** --- 4,12 ---- import java.util.Iterator; + import org.eclipse.core.resources.IResource; + import net.sourceforge.asneditor.util.HashableList; import antlr.RecognitionException; + import antlr.Token; /** This class defines the class holding for ASN.1 modules and basic Types */ *************** *** 23,31 **** boolean exported; boolean imported; ! private IASN exportsItem; // Default Constructor ! public ASNModule(){ ! exportsItem = null; exportSymbolList = new HashableList(); importSymbolList = new HashableList(); --- 26,37 ---- boolean exported; boolean imported; ! private IASN exportsItem, importsItem; ! private final IResource resource; // Default Constructor ! public ASNModule(IResource resource){ ! this.resource = resource; ! ! exportsItem = null; exportSymbolList = new HashableList(); importSymbolList = new HashableList(); *************** *** 92,95 **** --- 98,108 ---- } + /** + * @return the resource from which the module was read. + */ + public IResource getResource() { + return resource; + } + /** * @param declarationName *************** *** 128,139 **** if (token == null) return; ! exportsItem = new IASN() { ! public String toString() { ! return getName(); ! }}; ! exportsItem.name = "EXPORTS"; exportsItem.setToken(token); } /** * @return --- 141,199 ---- if (token == null) return; ! if (exportsItem == null) { ! exportsItem = new IASN() { ! public String toString() { ! return getName(); ! }}; ! exportsItem.name = "EXPORTS"; ! } exportsItem.setToken(token); } + /** + * @param token + */ + public void setExportsEndToken(Token token) { + if (token == null) + return; + if (exportsItem == null) { + exportsItem = new IASN() { + public String toString() { + return getName(); + }}; + exportsItem.name = "EXPORTS"; + } + exportsItem.setEndToken(token); + } + + public void setImportsToken(antlr.Token token) { + if (token == null) + return; + if (importsItem == null) { + importsItem = new IASN() { + public String toString() { + return getName(); + }}; + importsItem.name = "IMPORTS"; + } + importsItem.setToken(token); + } + + /** + * @param token + */ + public void setImportsEndToken(Token token) { + if (token == null) + return; + if (importsItem == null) { + importsItem = new IASN() { + public String toString() { + return getName(); + }}; + importsItem.name = "IMPORTS"; + } + importsItem.setEndToken(token); + } + /** * @return *************** *** 144,147 **** --- 204,214 ---- /** + * @return + */ + public IASN getImportsItem() { + return importsItem; + } + + /** * @param val * @throws RecognitionException |