[Pydev-cvs] org.python.pydev/src/org/python/pydev/editor/codecompletion/revisited/modules CompiledMo
Brought to you by:
fabioz
From: Fabio Z. <fa...@us...> - 2005-08-21 20:46:22
|
Update of /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/codecompletion/revisited/modules In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24296/src/org/python/pydev/editor/codecompletion/revisited/modules Modified Files: CompiledModule.java AbstractModule.java SourceModule.java EmptyModule.java Log Message: Index: SourceModule.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/codecompletion/revisited/modules/SourceModule.java,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -d -r1.22 -r1.23 *** SourceModule.java 13 Aug 2005 01:16:09 -0000 1.22 --- SourceModule.java 21 Aug 2005 20:46:11 -0000 1.23 *************** *** 18,24 **** import org.python.parser.ast.Str; import org.python.pydev.core.REF; - import org.python.pydev.editor.codecompletion.revisited.ASTManager; import org.python.pydev.editor.codecompletion.revisited.CompletionRecursionException; import org.python.pydev.editor.codecompletion.revisited.CompletionState; import org.python.pydev.editor.codecompletion.revisited.IToken; import org.python.pydev.editor.codecompletion.revisited.visitors.AssignDefinition; --- 18,24 ---- import org.python.parser.ast.Str; import org.python.pydev.core.REF; import org.python.pydev.editor.codecompletion.revisited.CompletionRecursionException; import org.python.pydev.editor.codecompletion.revisited.CompletionState; + import org.python.pydev.editor.codecompletion.revisited.ICodeCompletionASTManager; import org.python.pydev.editor.codecompletion.revisited.IToken; import org.python.pydev.editor.codecompletion.revisited.visitors.AssignDefinition; *************** *** 143,147 **** * @see org.python.pydev.editor.codecompletion.revisited.modules.AbstractModule#getGlobalTokens(java.lang.String) */ ! public IToken[] getGlobalTokens(CompletionState state, ASTManager manager) { IToken[] t = getTokens(GlobalModelVisitor.GLOBAL_TOKENS); --- 143,147 ---- * @see org.python.pydev.editor.codecompletion.revisited.modules.AbstractModule#getGlobalTokens(java.lang.String) */ ! public IToken[] getGlobalTokens(CompletionState state, ICodeCompletionASTManager manager) { IToken[] t = getTokens(GlobalModelVisitor.GLOBAL_TOKENS); Index: AbstractModule.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/codecompletion/revisited/modules/AbstractModule.java,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** AbstractModule.java 15 Jul 2005 23:07:19 -0000 1.18 --- AbstractModule.java 21 Aug 2005 20:46:11 -0000 1.19 *************** *** 18,23 **** import org.python.parser.SimpleNode; import org.python.pydev.core.REF; - import org.python.pydev.editor.codecompletion.revisited.ASTManager; import org.python.pydev.editor.codecompletion.revisited.CompletionState; import org.python.pydev.editor.codecompletion.revisited.IToken; import org.python.pydev.editor.codecompletion.revisited.PythonPathHelper; --- 18,23 ---- import org.python.parser.SimpleNode; import org.python.pydev.core.REF; import org.python.pydev.editor.codecompletion.revisited.CompletionState; + import org.python.pydev.editor.codecompletion.revisited.ICodeCompletionASTManager; import org.python.pydev.editor.codecompletion.revisited.IToken; import org.python.pydev.editor.codecompletion.revisited.PythonPathHelper; *************** *** 65,69 **** * @return whether the passed token is part of the global tokens of this module. */ ! public boolean isInGlobalTokens(String tok){ IToken[] tokens = getGlobalTokens(); --- 65,69 ---- * @return whether the passed token is part of the global tokens of this module. */ ! public boolean isInGlobalTokens(String tok, PythonNature nature){ IToken[] tokens = getGlobalTokens(); *************** *** 97,101 **** * @return */ ! public abstract IToken[] getGlobalTokens(CompletionState state, ASTManager manager); /** --- 97,101 ---- * @return */ ! public abstract IToken[] getGlobalTokens(CompletionState state, ICodeCompletionASTManager manager); /** Index: CompiledModule.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/codecompletion/revisited/modules/CompiledModule.java,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** CompiledModule.java 13 Aug 2005 21:04:40 -0000 1.17 --- CompiledModule.java 21 Aug 2005 20:46:11 -0000 1.18 *************** *** 11,16 **** import java.util.List; import org.python.pydev.editor.codecompletion.PyCodeCompletion; - import org.python.pydev.editor.codecompletion.revisited.ASTManager; import org.python.pydev.editor.codecompletion.revisited.CompletionState; import org.python.pydev.editor.codecompletion.revisited.ICodeCompletionASTManager; --- 11,16 ---- import java.util.List; + import org.python.pydev.core.FullRepIterable; import org.python.pydev.editor.codecompletion.PyCodeCompletion; import org.python.pydev.editor.codecompletion.revisited.CompletionState; import org.python.pydev.editor.codecompletion.revisited.ICodeCompletionASTManager; *************** *** 33,37 **** * These are the tokens the compiled module has. */ ! private CompiledToken[] tokens = new CompiledToken[0]; /** --- 33,37 ---- * These are the tokens the compiled module has. */ ! private CompiledToken[] tokens = null; /** *************** *** 71,74 **** --- 71,75 ---- tokens = array.toArray(new CompiledToken[0]); } catch (Exception e) { + tokens = new CompiledToken[0]; e.printStackTrace(); PydevPlugin.log(e); *************** *** 76,79 **** --- 77,81 ---- }else{ //not used if not enabled. + tokens = new CompiledToken[0]; } *************** *** 113,117 **** * @see org.python.pydev.editor.codecompletion.revisited.modules.AbstractModule#getGlobalTokens(java.lang.String) */ ! public IToken[] getGlobalTokens(CompletionState state, ASTManager manager) { Object v = cache.get(state.activationToken); if(v != null){ --- 115,119 ---- * @see org.python.pydev.editor.codecompletion.revisited.modules.AbstractModule#getGlobalTokens(java.lang.String) */ ! public IToken[] getGlobalTokens(CompletionState state, ICodeCompletionASTManager manager) { Object v = cache.get(state.activationToken); if(v != null){ *************** *** 145,148 **** --- 147,173 ---- return toks; } + + @Override + public boolean isInGlobalTokens(String tok, PythonNature nature) { + //we have to override because there is no way to check if it is in some import from some other place if it has dots on the tok... + + + if(tok.indexOf('.') == -1){ + return super.isInGlobalTokens(tok, nature); + }else{ + CompletionState state = CompletionState.getEmptyCompletionState(nature); + String[] headAndTail = FullRepIterable.headAndTail(tok); + state.activationToken = headAndTail[0]; + String tail = headAndTail[1]; + IToken[] globalTokens = getGlobalTokens(state, nature.getAstManager()); + for (IToken token : globalTokens) { + if(token.getRepresentation().equals(tail)){ + return true; + } + } + } + return false; + + } /** Index: EmptyModule.java =================================================================== RCS file: /cvsroot/pydev/org.python.pydev/src/org/python/pydev/editor/codecompletion/revisited/modules/EmptyModule.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** EmptyModule.java 15 Jul 2005 11:48:28 -0000 1.9 --- EmptyModule.java 21 Aug 2005 20:46:11 -0000 1.10 *************** *** 9,14 **** import java.io.Serializable; - import org.python.pydev.editor.codecompletion.revisited.ASTManager; import org.python.pydev.editor.codecompletion.revisited.CompletionState; import org.python.pydev.editor.codecompletion.revisited.IToken; import org.python.pydev.editor.codecompletion.revisited.visitors.Definition; --- 9,14 ---- import java.io.Serializable; import org.python.pydev.editor.codecompletion.revisited.CompletionState; + import org.python.pydev.editor.codecompletion.revisited.ICodeCompletionASTManager; import org.python.pydev.editor.codecompletion.revisited.IToken; import org.python.pydev.editor.codecompletion.revisited.visitors.Definition; *************** *** 65,69 **** * @see org.python.pydev.editor.codecompletion.revisited.modules.AbstractModule#getGlobalTokens(java.lang.String) */ ! public IToken[] getGlobalTokens(CompletionState state, ASTManager manager) { throw new RuntimeException("Not intended to be called"); } --- 65,69 ---- * @see org.python.pydev.editor.codecompletion.revisited.modules.AbstractModule#getGlobalTokens(java.lang.String) */ ! public IToken[] getGlobalTokens(CompletionState state, ICodeCompletionASTManager manager) { throw new RuntimeException("Not intended to be called"); } |