You can subscribe to this list here.
| 2005 |
Jan
|
Feb
|
Mar
(41) |
Apr
(9) |
May
|
Jun
|
Jul
(39) |
Aug
(38) |
Sep
(135) |
Oct
(220) |
Nov
(75) |
Dec
(74) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
(44) |
Feb
(160) |
Mar
(49) |
Apr
(69) |
May
(40) |
Jun
(52) |
Jul
(47) |
Aug
(51) |
Sep
(19) |
Oct
(22) |
Nov
(36) |
Dec
(76) |
| 2007 |
Jan
(154) |
Feb
(165) |
Mar
(186) |
Apr
(143) |
May
(175) |
Jun
(133) |
Jul
(203) |
Aug
(177) |
Sep
(136) |
Oct
|
Nov
|
Dec
|
|
From: <caw...@us...> - 2006-08-31 01:12:29
|
Revision: 1601
http://svn.sourceforge.net/rubyeclipse/?rev=1601&view=rev
Author: cawilliams
Date: 2006-08-30 18:12:25 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
remove hack where we stuff the proposals with Kernel methods
Modified Paths:
--------------
trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java
Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java
===================================================================
--- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java 2006-08-31 01:11:47 UTC (rev 1600)
+++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java 2006-08-31 01:12:25 UTC (rev 1601)
@@ -95,19 +95,6 @@
"status of the latest executed child process",
"array of paths that ruby interpreter searches for files" };
- // FIXME This is an ugly hack, just hard-coding method names
- // FIXME Create a model for Ruby core in our Ruby Model!
- private static String[] KERNEL_METHODS = { "abort", "at_exit", "autoload",
- "binding", "block_given?", "callcc", "caller", "catch", "chomp",
- "chomp!", "chop", "chop!", "eval", "exec", "exit", "exit!", "fail",
- "fork", "format", "gets", "global_variables", "gsub", "gsub!",
- "iterator?", "lambda", "load", "local_variables", "loop", "open",
- "p", "print", "printf", "proc", "putc", "puts", "raise", "rand",
- "readline", "readlines", "require", "scan", "select",
- "set_trace_func", "singleton_method_added", "sleep", "split",
- "sprintf", "srand", "sub", "sub!", "syscall", "system", "test",
- "throw", "trace_var", "trap", "untrace_var" };
-
/**
* The prefix for the current content assist
*/
@@ -224,7 +211,7 @@
List possibleProposals = new ArrayList();
for (Iterator iter = completionProposals.iterator(); iter.hasNext();) {
String proposal = (String) iter.next();
- if (proposal.startsWith(prefix)) {
+ if (proposal.startsWith(prefix) && !proposal.equals(prefix)) {
String message = "{0}";
IContextInformation info = new ContextInformation(proposal,
MessageFormat
@@ -244,14 +231,6 @@
return result;
}
- private Collection addKernelMethods() {
- Collection kernelProposals = new ArrayList();
- for (int i = 0; i < KERNEL_METHODS.length; i++) {
- kernelProposals.add(KERNEL_METHODS[i]);
- }
- return kernelProposals;
- }
-
/*
* (non-Javadoc)
*
@@ -391,10 +370,7 @@
*/
private Collection getDocumentsRubyElementsInScope(int offset) {
IRubyScript script = fManager.getWorkingCopy(fEditor.getEditorInput());
-
-
-// Collection elements = getElementsInScope(script, offset);
-
+
String source = "";
Collection elements = new ArrayList();
try {
@@ -452,12 +428,6 @@
elements.addAll(getElementsOfType( nextProject, new int[] { IRubyElement.GLOBAL }));
elements.addAll(addClassesAndModulesInProject( nextProject ));
}
-
-
- // always add Kernel methods
- elements.addAll(addKernelMethods());
-
-
} catch ( RubyModelException rme ) {
System.out.println("RubyModelException in RubyCompletionProcessor::getElementsInScope()");
rme.printStackTrace();
@@ -467,9 +437,6 @@
se.printStackTrace();
// Return empty 'elements'
}
-
-
-
return elements;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 01:11:50
|
Revision: 1600
http://svn.sourceforge.net/rubyeclipse/?rev=1600&view=rev
Author: cawilliams
Date: 2006-08-30 18:11:47 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
install the mark occurences finder when the editor is created (createPartControl)
Modified Paths:
--------------
trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyAbstractEditor.java
Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyAbstractEditor.java
===================================================================
--- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyAbstractEditor.java 2006-08-31 01:11:12 UTC (rev 1599)
+++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyAbstractEditor.java 2006-08-31 01:11:47 UTC (rev 1600)
@@ -320,6 +320,13 @@
return super.getAdapter(required);
}
+
+ public void createPartControl(Composite parent) {
+ super.createPartControl(parent);
+
+ if (fMarkOccurrenceAnnotations)
+ installOccurrencesFinder(false);
+ }
protected RubyOutlinePage createRubyOutlinePage() {
RubyOutlinePage outlinePage = new RubyOutlinePage(fOutlinerContextMenuId, this);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 01:11:16
|
Revision: 1599
http://svn.sourceforge.net/rubyeclipse/?rev=1599&view=rev
Author: cawilliams
Date: 2006-08-30 18:11:12 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
handle case where include function is called with a ConstNode (the most common case, I think)
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptStructureBuilder.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptStructureBuilder.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptStructureBuilder.java 2006-08-31 01:10:13 UTC (rev 1598)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptStructureBuilder.java 2006-08-31 01:11:12 UTC (rev 1599)
@@ -1018,6 +1018,9 @@
mixins.add( ((StrNode)next).getValue() );
}
}
+ if (mixinNameNode instanceof ConstNode) {
+ mixins.add( ((ConstNode)mixinNameNode).getName() );
+ }
}
// Push mixins into parent type, if available
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 01:10:39
|
Revision: 1598
http://svn.sourceforge.net/rubyeclipse/?rev=1598&view=rev
Author: cawilliams
Date: 2006-08-30 18:10:13 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
do a more thorough search up the hierarchy for methods to suggest
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java 2006-08-31 01:09:27 UTC (rev 1597)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java 2006-08-31 01:10:13 UTC (rev 1598)
@@ -666,6 +666,7 @@
if (offset < 0) offset = 0;
ITypeInferrer inferrer = new DefaultTypeInferrer();
+ // FIXME Ugly hacking here to handle where we have invalid syntax by invoking after a period
StringBuffer source = new StringBuffer(new String(getContents()));
int replaceStart = offset + 1;
char charAtOffset = (char) source.charAt(offset);
@@ -675,6 +676,7 @@
}
charAtOffset = (char) source.charAt(offset);
System.out.println(charAtOffset);
+
List<ITypeGuess> guesses = inferrer.infer(source.toString(), offset);
// TODO Grab the project and all referred projects!
IRubyProject[] projects = new IRubyProject[1];
@@ -685,18 +687,37 @@
System.out.println("Type Inferrer thinks this is a: "
+ guess.getType());
IType type = completer.findType(guess.getType());
- IMethod[] methods = type.getMethods();
- System.out.println("Got " + methods.length + " methods");
- for (int k = 0; k < methods.length; k++) {
- String name = methods[k].getElementName();
- System.out.println("Got method name: " + name);
- CompletionProposal proposal = new CompletionProposal(
- CompletionProposal.METHOD_REF, name, guess
- .getConfidence());
- // TODO Handle replacement start index correctly
- proposal.setReplaceRange(replaceStart, replaceStart + name.length());
- requestor.accept(proposal);
- }
+ suggestMethods(requestor, replaceStart, completer, guess, type);
}
}
+
+ private void suggestMethods(CompletionRequestor requestor, int replaceStart, RubyElementRequestor completer, ITypeGuess guess, IType type) throws RubyModelException {
+ if (type == null) return;
+
+ suggestMethods(requestor, replaceStart, guess.getConfidence(), type);
+ // Now grab methods from all the included modules
+ String[] modules = type.getIncludedModuleNames();
+ for (int x = 0; x < modules.length; x++) {
+ IType tmpType = completer.findType(modules[x]);
+ suggestMethods(requestor, replaceStart, guess.getConfidence(), tmpType);
+ }
+ String superClass = type.getSuperclassName();
+// FIXME This shouldn't happen! Object shouldn't be a parent of itself!
+ if (type.getElementName().equals("Object") && superClass.equals("Object")) return;
+ IType parentClass = completer.findType(superClass);
+ suggestMethods(requestor, replaceStart, completer, guess, parentClass);
+ }
+
+ private void suggestMethods(CompletionRequestor requestor, int replaceStart, int confidence, IType type) throws RubyModelException {
+ if (type == null) return;
+ IMethod[] methods = type.getMethods();
+ for (int k = 0; k < methods.length; k++) {
+ String name = methods[k].getElementName();
+ CompletionProposal proposal = new CompletionProposal(
+ CompletionProposal.METHOD_REF, name, confidence);
+ // TODO Handle replacement start index correctly
+ proposal.setReplaceRange(replaceStart, replaceStart + name.length());
+ requestor.accept(proposal);
+ }
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 01:09:30
|
Revision: 1597
http://svn.sourceforge.net/rubyeclipse/?rev=1597&view=rev
Author: cawilliams
Date: 2006-08-30 18:09:27 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
remove debug output to stdout
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/RubyElementRequestor.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/RubyElementRequestor.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/RubyElementRequestor.java 2006-08-31 00:03:19 UTC (rev 1596)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/RubyElementRequestor.java 2006-08-31 01:09:27 UTC (rev 1597)
@@ -63,10 +63,7 @@
try {
for (int x = 0; x < projects.length; x++) {
IRubyProject project = projects[x];
- System.out.println("Checking project: "
- + project.getElementName());
IRubyScript[] scripts = project.getRubyScripts();
- System.out.println("Got " + scripts.length + " scripts");
for (int i = 0; i < scripts.length; i++) {
IRubyScript script = scripts[i];
IType type = findTypeInScript(typeName, script);
@@ -83,8 +80,6 @@
private IType findTypeInScript(String typeName, IRubyScript script)
throws RubyModelException {
- System.out.println("Checking for that type inside script: "
- + script.getElementName());
IType[] types = script.getTypes();
for (int j = 0; j < types.length; j++) {
IType type = types[j];
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 00:03:24
|
Revision: 1596
http://svn.sourceforge.net/rubyeclipse/?rev=1596&view=rev
Author: cawilliams
Date: 2006-08-30 17:03:19 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
don't create all errors as Syntax errors
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptProblemFinder.java
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/ProblemRequestorMarkerManager.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptProblemFinder.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptProblemFinder.java 2006-08-31 00:02:55 UTC (rev 1595)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptProblemFinder.java 2006-08-31 00:03:19 UTC (rev 1596)
@@ -54,7 +54,7 @@
RubyLintVisitor visitor = new RubyLintVisitor(contents, problemRequestor);
node.accept(visitor);
} catch (SyntaxException e) {
- problemRequestor.acceptProblem(new Error(e.getPosition(), "Syntax Error"));
+ problemRequestor.acceptProblem(new Error(e.getPosition(), e.getMessage()));
}
}
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/ProblemRequestorMarkerManager.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/ProblemRequestorMarkerManager.java 2006-08-31 00:02:55 UTC (rev 1595)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/ProblemRequestorMarkerManager.java 2006-08-31 00:03:19 UTC (rev 1596)
@@ -33,10 +33,9 @@
return;
}
if (problem.isError()) {
- markerManager.createSyntaxError(file, new SyntaxException(
- new RdtPosition(problem.getSourceLineNumber(), problem
- .getSourceStart(), problem.getSourceEnd()), problem
- .getMessage()));
+ markerManager.createError(file, problem.getMessage(),
+ problem.getSourceLineNumber(), problem
+ .getSourceStart(), problem.getSourceEnd());
return;
}
if (problem.isTask()) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 00:03:16
|
Revision: 1595
http://svn.sourceforge.net/rubyeclipse/?rev=1595&view=rev
Author: cawilliams
Date: 2006-08-30 17:02:55 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
if no preference setting for a particular Lint finding, treat it as a Warning, not an Error
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/parser/RubyLintVisitor.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/parser/RubyLintVisitor.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/parser/RubyLintVisitor.java 2006-08-31 00:01:55 UTC (rev 1594)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/parser/RubyLintVisitor.java 2006-08-31 00:02:55 UTC (rev 1595)
@@ -111,12 +111,6 @@
return super.visitDefsNode(iVisited);
}
- protected Instruction handleNode(Node visited) {
- // System.out.println(visited.toString() + ", position -> "
- // + visited.getPosition());
- return super.handleNode(visited);
- }
-
public Instruction visitConstDeclNode(ConstDeclNode iVisited) {
String name = iVisited.getName();
@@ -128,14 +122,10 @@
}
private IProblem createProblem(String compilerOption, ISourcePosition position, String message) {
- String value = RubyCore.getOption(compilerOption);
- if (value == null)
+ String value = RubyCore.getOption(compilerOption);
+ if (value != null && value.equals(RubyCore.ERROR))
return new Error(position, message);
- if (value.equals(RubyCore.WARNING))
- return new Warning(position, message);
- if (value.equals(RubyCore.ERROR))
- return new Error(position, message);
- return null;
+ return new Warning(position, message);
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-31 00:02:20
|
Revision: 1594
http://svn.sourceforge.net/rubyeclipse/?rev=1594&view=rev
Author: cawilliams
Date: 2006-08-30 17:01:55 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
add label for RubyElementLabels_import_container
Modified Paths:
--------------
trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/RubyUIMessages.properties
Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/RubyUIMessages.properties
===================================================================
--- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/RubyUIMessages.properties 2006-08-30 23:43:36 UTC (rev 1593)
+++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/RubyUIMessages.properties 2006-08-31 00:01:55 UTC (rev 1594)
@@ -121,6 +121,7 @@
RubyElementLabels_concat_string=\ -\
RubyElementLabels_comma_string=,\
RubyElementLabels_declseparator_string=\ :\
+RubyElementLabels_import_container=require/load declarations
#########
# misc
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2006-08-30 23:43:41
|
Revision: 1593
http://svn.sourceforge.net/rubyeclipse/?rev=1593&view=rev
Author: cawilliams
Date: 2006-08-30 16:43:36 -0700 (Wed, 30 Aug 2006)
Log Message:
-----------
include generated ruby core stubs in a binary build (for now)
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/build.properties
Modified: trunk/org.rubypeople.rdt.core/build.properties
===================================================================
--- trunk/org.rubypeople.rdt.core/build.properties 2006-08-28 22:37:44 UTC (rev 1592)
+++ trunk/org.rubypeople.rdt.core/build.properties 2006-08-30 23:43:36 UTC (rev 1593)
@@ -3,7 +3,8 @@
.options,\
rdtcore.jar,\
lib/,\
- META-INF/
+ META-INF/,\
+ ruby/
source.rdtcore.jar = src/
plugin = org.rubypeople.rdt.core
plugin.name = rdtcorejars.compile.order = rdtcore.jar
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: Spark S. <sma...@gm...> - 2006-08-29 08:32:54
|
Hi
I installed rubyeclipse 0.8.0 release on eclipse 3.2 release(on windows
xp sp2) and using latest ruby interpreter 1.8.4.
And when debuging ruby program, (open
Window->Preferences->Run/Debug->Perspective, set Ruby Application
'Perspectives' Debug to debug mode.That is to say, when debuging ruby
application, eclipse will automatically switch
to debug perspective)
no stack trace information will be shown:
Ruby
Ruby C:\ruby\bin\ruby.exe :
C:\spark\eclipse\plugins\org.rubypeople.rdt.testunit_0.8.0.604272100PRD\ruby\RemoteTestRunner.rb
only when manually switch to debug perspective will these information be
properly shown.
Ruby
Ruby Thread - 1 (Breakpoint at test_suite__all_test.rb:7)
C:\spark\workspace\workspace\RubyTest/test_suite__all_test.rb:7
C:/ruby/lib/ruby/1.8/test/unit/ui/console/testrunner.rb:25
C:/ruby/lib/ruby/1.8/test/unit/ui/testrunnerutilities.rb:27
C:\spark\workspace\workspace\RubyTest/test_suite__all_test.rb:15
C:/spark/eclipse/plugins/org.rubypeople.rdt.testunit_0.8.0.604272100PRD/ruby/RemoteTestRunner.rb:260
Another problem is Step Into & Step Over will not function properly when
debugging.
Always prompts:
ruby 1.8.4 debugger listens on port 2676
This application has requested the Runtime to terminate it in an unusual
way.
Please contact the application's support team for more information.
Best regards
--
Spark Shen
China Software Development Lab, IBM
|
|
From: <mir...@us...> - 2006-08-28 22:38:03
|
Revision: 1592 Author: mirkostocker Date: 2006-08-28 15:37:44 -0700 (Mon, 28 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1592&view=rev Log Message: ----------- fixed bug #104 (syntax highlighting of heredocs with indented identifier) and also fixed the classpath of the astviewer Modified Paths: -------------- trunk/org.rubypeople.rdt.astviewer/.classpath trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/HereDocPatternRule.java trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyPartitionScanner.java Modified: trunk/org.rubypeople.rdt.astviewer/.classpath =================================================================== --- trunk/org.rubypeople.rdt.astviewer/.classpath 2006-08-26 18:01:41 UTC (rev 1591) +++ trunk/org.rubypeople.rdt.astviewer/.classpath 2006-08-28 22:37:44 UTC (rev 1592) @@ -3,6 +3,6 @@ <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> - <classpathentry kind="lib" path="/Users/cwilliams/Documents/merge/trunk/org.jruby/lib/jruby.jar"/> + <classpathentry kind="lib" path="/org.jruby/lib/jruby.jar"/> <classpathentry kind="output" path="bin"/> </classpath> Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/HereDocPatternRule.java =================================================================== --- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/HereDocPatternRule.java 2006-08-26 18:01:41 UTC (rev 1591) +++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/HereDocPatternRule.java 2006-08-28 22:37:44 UTC (rev 1592) @@ -20,12 +20,13 @@ } protected boolean endSequenceDetected(ICharacterScanner scanner) { - char firstChar = (char) scanner.read(); if (Character.isWhitespace(firstChar)) { return false; } - + + boolean indentedKeyword = false; if (firstChar == '-') { + indentedKeyword = true; firstChar = (char) scanner.read(); } boolean isQuoted = false; @@ -35,26 +36,61 @@ quote = firstChar; firstChar = (char) scanner.read(); } - String keyword = ""; - char c = firstChar; - do { - if ((byte) c == ICharacterScanner.EOF || Character.isWhitespace(c)) { - break; - } - keyword += c; - c = (char) scanner.read(); - } while (true); + String keyword = readKeyword(scanner, firstChar); if (keyword.length() == 0) { return false; } if (isQuoted && !(keyword.charAt(keyword.length() - 1) == quote)) { return false; } if (isQuoted) { - fEndSequence = keyword.substring(0, keyword.length() - 1).toCharArray(); + fEndSequence = removeEndQuote(keyword).toCharArray(); } else { fEndSequence = keyword.toCharArray(); } boolean result = super.endSequenceDetected(scanner); if (!result) { return false; } - // the keyword must be at the beginning of the line - return scanner.getColumn() == fEndSequence.length; + + if(indentedKeyword) { + rewindToBeginOfLine(scanner); + char lastChar; + do { + lastChar = (char) scanner.read(); + } + while(Character.isWhitespace(lastChar)); + + String newKeyword = readKeyword(scanner, lastChar); + + if(isQuoted) + return removeEndQuote(keyword).equals(newKeyword); + else + return keyword.equals(newKeyword); + + } else { + return scanner.getColumn() == fEndSequence.length; + } } + private String removeEndQuote(String keyword) { + return keyword.substring(0, keyword.length() - 1); + } + + private void rewindToBeginOfLine(ICharacterScanner scanner) { + char readChar = 0; + while (readChar != '\n') { + scanner.unread(); + scanner.unread(); + readChar = (char) scanner.read(); + } + } + + private String readKeyword(ICharacterScanner scanner, char firstChar) { + String keyword = ""; + char c = firstChar; + do { + if ((byte) c == ICharacterScanner.EOF || Character.isWhitespace(c)) { + break; + } + keyword += c; + c = (char) scanner.read(); + } while (true); + return keyword; + } + } Modified: trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyPartitionScanner.java =================================================================== --- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyPartitionScanner.java 2006-08-26 18:01:41 UTC (rev 1591) +++ trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyPartitionScanner.java 2006-08-28 22:37:44 UTC (rev 1592) @@ -55,6 +55,16 @@ assertEquals(IDocument.DEFAULT_CONTENT_TYPE, this.getContentType(source, 10)); } + public void testHereDocWithSpacesOK() { + String source = "puts <<-TEST\nMyName\n\tTEST\nputs 'ab'"; + assertEquals(RubyPartitionScanner.RUBY_STRING, this.getContentType(source, 5)); + + source = "puts <<-TEST\nMyName\n TEST\nputs 'ab'"; + assertEquals(RubyPartitionScanner.RUBY_STRING, this.getContentType(source, 5)); + + source = "puts <<-'ax%&'\nMyName\n ax%&"; + assertEquals(RubyPartitionScanner.RUBY_STRING, this.getContentType(source, 5)); + } public void testHereDocOK() { String source = "puts <<TEST\nMyName\nTEST"; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mba...@us...> - 2006-08-26 18:01:52
|
Revision: 1591 Author: mbarchfe Date: 2006-08-26 11:01:41 -0700 (Sat, 26 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1591&view=rev Log Message: ----------- start jmx Modified Paths: -------------- trunk/org.rubypeople.rdt.build/cruiseControl/startCCForRDT.sh Modified: trunk/org.rubypeople.rdt.build/cruiseControl/startCCForRDT.sh =================================================================== --- trunk/org.rubypeople.rdt.build/cruiseControl/startCCForRDT.sh 2006-08-26 18:00:50 UTC (rev 1590) +++ trunk/org.rubypeople.rdt.build/cruiseControl/startCCForRDT.sh 2006-08-26 18:01:41 UTC (rev 1591) @@ -1,5 +1,4 @@ -#! /bin/sh +#!/bin/bash Xvfb :1 & export DISPLAY=localhost:1 -#cd ~/cruisecontrol-bin-2.5 -sh ../cruisecontrol-bin-2.5/cruisecontrol.sh -webport 8090 $@ +~/cruisecontrol-bin-2.5/cruisecontrol.sh -webport 8080 -jmxport 8000 $@ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mba...@us...> - 2006-08-26 18:00:58
|
Revision: 1590 Author: mbarchfe Date: 2006-08-26 11:00:50 -0700 (Sat, 26 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1590&view=rev Log Message: ----------- stop script Added Paths: ----------- trunk/org.rubypeople.rdt.build/cruiseControl/stopCC.sh Added: trunk/org.rubypeople.rdt.build/cruiseControl/stopCC.sh =================================================================== --- trunk/org.rubypeople.rdt.build/cruiseControl/stopCC.sh (rev 0) +++ trunk/org.rubypeople.rdt.build/cruiseControl/stopCC.sh 2006-08-26 18:00:50 UTC (rev 1590) @@ -0,0 +1,3 @@ +#!/bin/sh +pgid=`ps -ef | grep [s]tartCC | awk '{print $2}'` +kill `ps -eo pgid,pid | grep $pgid | awk '{print $2}'` Property changes on: trunk/org.rubypeople.rdt.build/cruiseControl/stopCC.sh ___________________________________________________________________ Name: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mba...@us...> - 2006-08-26 18:00:27
|
Revision: 1589 Author: mbarchfe Date: 2006-08-26 11:00:21 -0700 (Sat, 26 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1589&view=rev Log Message: ----------- use java 1.5 Modified Paths: -------------- trunk/org.rubypeople.rdt.build/cruiseControl/build.properties Modified: trunk/org.rubypeople.rdt.build/cruiseControl/build.properties =================================================================== --- trunk/org.rubypeople.rdt.build/cruiseControl/build.properties 2006-08-26 12:59:59 UTC (rev 1588) +++ trunk/org.rubypeople.rdt.build/cruiseControl/build.properties 2006-08-26 18:00:21 UTC (rev 1589) @@ -96,10 +96,10 @@ javacFailOnError=true # The version of the source code -javacSource=1.4 +javacSource=1.5 # The version of the byte code targeted -javacTarget=1.4 +javacTarget=1.5 #collPlace=eclipse #collBase=. This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mba...@us...> - 2006-08-26 13:00:06
|
Revision: 1588 Author: mbarchfe Date: 2006-08-26 05:59:59 -0700 (Sat, 26 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1588&view=rev Log Message: ----------- updated bin.includes so that PDE can generate an errorless build.xml Modified Paths: -------------- trunk/org.jruby/build.properties Modified: trunk/org.jruby/build.properties =================================================================== --- trunk/org.jruby/build.properties 2006-08-26 12:58:49 UTC (rev 1587) +++ trunk/org.jruby/build.properties 2006-08-26 12:59:59 UTC (rev 1588) @@ -1,5 +1,3 @@ -source.. = src/ output.. = bin/ bin.includes = META-INF/,\ - .,\ lib/jruby.jar This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mba...@us...> - 2006-08-26 12:58:56
|
Revision: 1587 Author: mbarchfe Date: 2006-08-26 05:58:49 -0700 (Sat, 26 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1587&view=rev Log Message: ----------- updated bundle classpath so that PDE can generate an errorless build.xml Modified Paths: -------------- trunk/org.jruby/META-INF/MANIFEST.MF Modified: trunk/org.jruby/META-INF/MANIFEST.MF =================================================================== --- trunk/org.jruby/META-INF/MANIFEST.MF 2006-08-26 12:30:57 UTC (rev 1586) +++ trunk/org.jruby/META-INF/MANIFEST.MF 2006-08-26 12:58:49 UTC (rev 1587) @@ -7,8 +7,7 @@ Bundle-Localization: plugin Require-Bundle: org.eclipse.core.runtime Eclipse-LazyStart: false -Bundle-ClassPath: lib/jruby.jar, - . +Bundle-ClassPath: lib/jruby.jar Export-Package: org.ablaf.ast, org.ablaf.internal.ast, org.jruby, This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mba...@us...> - 2006-08-26 12:31:03
|
Revision: 1586 Author: mbarchfe Date: 2006-08-26 05:30:57 -0700 (Sat, 26 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1586&view=rev Log Message: ----------- adapted version of jruby to plug-in version Modified Paths: -------------- trunk/org.rubypeople.rdt-feature/feature.xml Modified: trunk/org.rubypeople.rdt-feature/feature.xml =================================================================== --- trunk/org.rubypeople.rdt-feature/feature.xml 2006-08-25 02:16:02 UTC (rev 1585) +++ trunk/org.rubypeople.rdt-feature/feature.xml 2006-08-26 12:30:57 UTC (rev 1586) @@ -333,7 +333,7 @@ id="org.jruby" download-size="0" install-size="0" - version="0.0.0" + version="1.0.0" unpack="false"/> </feature> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <caw...@us...> - 2006-08-25 02:16:07
|
Revision: 1585 Author: cawilliams Date: 2006-08-24 19:16:02 -0700 (Thu, 24 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1585&view=rev Log Message: ----------- add org.jruby to list of plugins Modified Paths: -------------- trunk/org.rubypeople.rdt.build/cruiseControl/svn_co_rdt Modified: trunk/org.rubypeople.rdt.build/cruiseControl/svn_co_rdt =================================================================== --- trunk/org.rubypeople.rdt.build/cruiseControl/svn_co_rdt 2006-08-25 01:53:42 UTC (rev 1584) +++ trunk/org.rubypeople.rdt.build/cruiseControl/svn_co_rdt 2006-08-25 02:16:02 UTC (rev 1585) @@ -25,7 +25,7 @@ # Fetch the plugins # pluginsDir=$1/plugins -plugins="org.epic.regexp org.rubypeople.rdt org.rubypeople.rdt.debug.core.tests org.rubypeople.rdt.launching org.rubypeople.rdt.ui org.kxml2 org.rubypeople.rdt.core org.rubypeople.rdt.debug.ui org.rubypeople.rdt.launching.tests org.rubypeople.rdt.ui.tests org.rubypeople.eclipse.shams org.rubypeople.rdt.core.tests org.rubypeople.rdt.debug.ui.tests org.rubypeople.rdt.tests.all org.rubypeople.eclipse.testutils org.rubypeople.rdt.debug.core org.rubypeople.rdt.doc.user org.rubypeople.rdt.testunit" +plugins="org.epic.regexp org.rubypeople.rdt org.rubypeople.rdt.debug.core.tests org.rubypeople.rdt.launching org.rubypeople.rdt.ui org.kxml2 org.rubypeople.rdt.core org.rubypeople.rdt.debug.ui org.rubypeople.rdt.launching.tests org.rubypeople.rdt.ui.tests org.rubypeople.eclipse.shams org.rubypeople.rdt.core.tests org.rubypeople.rdt.debug.ui.tests org.rubypeople.rdt.tests.all org.rubypeople.eclipse.testutils org.rubypeople.rdt.debug.core org.rubypeople.rdt.doc.user org.rubypeople.rdt.testunit org.jruby" for plugin in $plugins; do svn co ${url}/$plugin $pluginsDir/$plugin This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <caw...@us...> - 2006-08-25 01:55:55
|
Revision: 1584 Author: cawilliams Date: 2006-08-24 18:53:42 -0700 (Thu, 24 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1584&view=rev Log Message: ----------- Merged type_inferrence/trunk changes 1446:1583 into trunk. Modified Paths: -------------- trunk/org.epic.regexp/build.properties trunk/org.epic.regexp/plugin.xml trunk/org.rubypeople.rdt-feature/feature.xml trunk/org.rubypeople.rdt.astviewer/.classpath trunk/org.rubypeople.rdt.core/.classpath trunk/org.rubypeople.rdt.core/META-INF/MANIFEST.MF trunk/org.rubypeople.rdt.core/build.properties trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/ICodeAssist.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/RubyCore.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/SelectionVisitor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyProject.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptProblemFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScriptStructureBuilder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/IndexUpdater.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/MassIndexUpdater.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/builder/RubyCodeAnalyzer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/parser/RubyParser.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/util/CharOperation.java trunk/org.rubypeople.rdt.core.tests/.project trunk/org.rubypeople.rdt.core.tests/plugin.xml trunk/org.rubypeople.rdt.testunit/build.properties trunk/org.rubypeople.rdt.testunit/plugin.xml trunk/org.rubypeople.rdt.ui/META-INF/MANIFEST.MF trunk/org.rubypeople.rdt.ui/plugin.properties trunk/org.rubypeople.rdt.ui/plugin.xml trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/preferences/PreferencesMessages.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/preferences/PreferencesMessages.properties trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyAbstractEditor.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyEditor.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/search/RubySearchPage.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProposal.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/ui/PreferenceConstants.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/ui/text/RubySourceViewerConfiguration.java trunk/org.rubypeople.rdt.ui.tests/plugin.xml Added Paths: ----------- trunk/org.epic.regexp/META-INF/ trunk/org.epic.regexp/META-INF/MANIFEST.MF trunk/org.jruby/ trunk/org.jruby/.classpath trunk/org.jruby/.project trunk/org.jruby/META-INF/ trunk/org.jruby/META-INF/MANIFEST.MF trunk/org.jruby/bin/ trunk/org.jruby/build.properties trunk/org.jruby/lib/ trunk/org.jruby/lib/jruby.jar trunk/org.rubypeople.rdt.core/ruby/ trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb trunk/org.rubypeople.rdt.core/ruby/lib/ trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb trunk/org.rubypeople.rdt.core/ruby/lib/array.rb trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb trunk/org.rubypeople.rdt.core/ruby/lib/class.rb trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb trunk/org.rubypeople.rdt.core/ruby/lib/config.rb trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb trunk/org.rubypeople.rdt.core/ruby/lib/data.rb trunk/org.rubypeople.rdt.core/ruby/lib/date.rb trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb trunk/org.rubypeople.rdt.core/ruby/lib/digest.rb trunk/org.rubypeople.rdt.core/ruby/lib/dir.rb trunk/org.rubypeople.rdt.core/ruby/lib/enumerable.rb trunk/org.rubypeople.rdt.core/ruby/lib/eoferror.rb trunk/org.rubypeople.rdt.core/ruby/lib/errno.rb trunk/org.rubypeople.rdt.core/ruby/lib/exception.rb trunk/org.rubypeople.rdt.core/ruby/lib/falseclass.rb trunk/org.rubypeople.rdt.core/ruby/lib/file.rb trunk/org.rubypeople.rdt.core/ruby/lib/filetest.rb trunk/org.rubypeople.rdt.core/ruby/lib/fileutils.rb trunk/org.rubypeople.rdt.core/ruby/lib/fixnum.rb trunk/org.rubypeople.rdt.core/ruby/lib/float.rb trunk/org.rubypeople.rdt.core/ruby/lib/floatdomainerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/forwardable.rb trunk/org.rubypeople.rdt.core/ruby/lib/gc.rb trunk/org.rubypeople.rdt.core/ruby/lib/gem.rb trunk/org.rubypeople.rdt.core/ruby/lib/hash.rb trunk/org.rubypeople.rdt.core/ruby/lib/indexerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/integer.rb trunk/org.rubypeople.rdt.core/ruby/lib/interrupt.rb trunk/org.rubypeople.rdt.core/ruby/lib/io.rb trunk/org.rubypeople.rdt.core/ruby/lib/ioerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/kernel.rb trunk/org.rubypeople.rdt.core/ruby/lib/loaderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/localjumperror.rb trunk/org.rubypeople.rdt.core/ruby/lib/marshal.rb trunk/org.rubypeople.rdt.core/ruby/lib/matchdata.rb trunk/org.rubypeople.rdt.core/ruby/lib/math.rb trunk/org.rubypeople.rdt.core/ruby/lib/method.rb trunk/org.rubypeople.rdt.core/ruby/lib/module.rb trunk/org.rubypeople.rdt.core/ruby/lib/nameerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/nilclass.rb trunk/org.rubypeople.rdt.core/ruby/lib/nomemoryerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/nomethoderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/notimplementederror.rb trunk/org.rubypeople.rdt.core/ruby/lib/numeric.rb trunk/org.rubypeople.rdt.core/ruby/lib/object.rb trunk/org.rubypeople.rdt.core/ruby/lib/objectspace.rb trunk/org.rubypeople.rdt.core/ruby/lib/openssl.rb trunk/org.rubypeople.rdt.core/ruby/lib/parsedate.rb trunk/org.rubypeople.rdt.core/ruby/lib/precision.rb trunk/org.rubypeople.rdt.core/ruby/lib/proc.rb trunk/org.rubypeople.rdt.core/ruby/lib/process.rb trunk/org.rubypeople.rdt.core/ruby/lib/range.rb trunk/org.rubypeople.rdt.core/ruby/lib/rangeerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/rational.rb trunk/org.rubypeople.rdt.core/ruby/lib/regexp.rb trunk/org.rubypeople.rdt.core/ruby/lib/regexperror.rb trunk/org.rubypeople.rdt.core/ruby/lib/runtimeerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/scripterror.rb trunk/org.rubypeople.rdt.core/ruby/lib/securityerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/signal.rb trunk/org.rubypeople.rdt.core/ruby/lib/signalexception.rb trunk/org.rubypeople.rdt.core/ruby/lib/singleforwardable.rb trunk/org.rubypeople.rdt.core/ruby/lib/standarderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/string.rb trunk/org.rubypeople.rdt.core/ruby/lib/struct.rb trunk/org.rubypeople.rdt.core/ruby/lib/symbol.rb trunk/org.rubypeople.rdt.core/ruby/lib/syntaxerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/systemcallerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/systemexit.rb trunk/org.rubypeople.rdt.core/ruby/lib/systemstackerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/thread.rb trunk/org.rubypeople.rdt.core/ruby/lib/threaderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/threadgroup.rb trunk/org.rubypeople.rdt.core/ruby/lib/time.rb trunk/org.rubypeople.rdt.core/ruby/lib/trueclass.rb trunk/org.rubypeople.rdt.core/ruby/lib/typeerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/unboundmethod.rb trunk/org.rubypeople.rdt.core/ruby/lib/zerodivisionerror.rb trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/CompletionProposal.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/CompletionRequestor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/codeassist/RubyElementRequestor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/AbstractOccurencesFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/BasicTypeGuess.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultOccurrencesFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultReferenceFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultTypeInferrer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/IOccurrencesFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/IReferenceFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ITypeGuess.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ITypeInferrer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ReferenceTypeGuess.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/Scope.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ScopingVisitor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/TypeInferenceHelper.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/TypeInferenceVisitor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/Variable.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/data/ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/data/ConstNodeTypeNames.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/data/TypicalMethodReturnNames.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/AttributeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/ClosestSpanningNodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/FirstPrecursorNodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/INodeAcceptor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/MethodDefinitionLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/MethodInvocationLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/NodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/OffsetNodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/ScopedNodeLocator.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/ trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/MarkOccurrencesTest.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/ReferenceMatchTest.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/TypeInferrerTest.java trunk/org.rubypeople.rdt.testunit/META-INF/ trunk/org.rubypeople.rdt.testunit/META-INF/MANIFEST.MF trunk/org.rubypeople.rdt.ui/icons/full/obj16/searchm_obj.gif trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/preferences/MarkOccurrencesConfigurationBlock.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/preferences/MarkOccurrencesPreferencePage.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/AbstractRubyCompletionProposal.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/IInformationControlExtension4.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/ProposalInfo.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyScriptCompletion.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/hover/AbstractReusableInformationControlCreator.java trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/hover/BrowserInformationControl.java Removed Paths: ------------- trunk/org.epic.regexp/META-INF/MANIFEST.MF trunk/org.jruby/.classpath trunk/org.jruby/.project trunk/org.jruby/META-INF/ trunk/org.jruby/META-INF/MANIFEST.MF trunk/org.jruby/bin/ trunk/org.jruby/build.properties trunk/org.jruby/lib/ trunk/org.jruby/lib/jruby.jar trunk/org.rubypeople.rdt.core/lib/jruby.jar trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb trunk/org.rubypeople.rdt.core/ruby/lib/ trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb trunk/org.rubypeople.rdt.core/ruby/lib/array.rb trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb trunk/org.rubypeople.rdt.core/ruby/lib/class.rb trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb trunk/org.rubypeople.rdt.core/ruby/lib/config.rb trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb trunk/org.rubypeople.rdt.core/ruby/lib/data.rb trunk/org.rubypeople.rdt.core/ruby/lib/date.rb trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb trunk/org.rubypeople.rdt.core/ruby/lib/digest.rb trunk/org.rubypeople.rdt.core/ruby/lib/dir.rb trunk/org.rubypeople.rdt.core/ruby/lib/enumerable.rb trunk/org.rubypeople.rdt.core/ruby/lib/eoferror.rb trunk/org.rubypeople.rdt.core/ruby/lib/errno.rb trunk/org.rubypeople.rdt.core/ruby/lib/exception.rb trunk/org.rubypeople.rdt.core/ruby/lib/falseclass.rb trunk/org.rubypeople.rdt.core/ruby/lib/file.rb trunk/org.rubypeople.rdt.core/ruby/lib/filetest.rb trunk/org.rubypeople.rdt.core/ruby/lib/fileutils.rb trunk/org.rubypeople.rdt.core/ruby/lib/fixnum.rb trunk/org.rubypeople.rdt.core/ruby/lib/float.rb trunk/org.rubypeople.rdt.core/ruby/lib/floatdomainerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/forwardable.rb trunk/org.rubypeople.rdt.core/ruby/lib/gc.rb trunk/org.rubypeople.rdt.core/ruby/lib/gem.rb trunk/org.rubypeople.rdt.core/ruby/lib/hash.rb trunk/org.rubypeople.rdt.core/ruby/lib/indexerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/integer.rb trunk/org.rubypeople.rdt.core/ruby/lib/interrupt.rb trunk/org.rubypeople.rdt.core/ruby/lib/io.rb trunk/org.rubypeople.rdt.core/ruby/lib/ioerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/kernel.rb trunk/org.rubypeople.rdt.core/ruby/lib/loaderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/localjumperror.rb trunk/org.rubypeople.rdt.core/ruby/lib/marshal.rb trunk/org.rubypeople.rdt.core/ruby/lib/matchdata.rb trunk/org.rubypeople.rdt.core/ruby/lib/math.rb trunk/org.rubypeople.rdt.core/ruby/lib/method.rb trunk/org.rubypeople.rdt.core/ruby/lib/module.rb trunk/org.rubypeople.rdt.core/ruby/lib/nameerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/nilclass.rb trunk/org.rubypeople.rdt.core/ruby/lib/nomemoryerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/nomethoderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/notimplementederror.rb trunk/org.rubypeople.rdt.core/ruby/lib/numeric.rb trunk/org.rubypeople.rdt.core/ruby/lib/object.rb trunk/org.rubypeople.rdt.core/ruby/lib/objectspace.rb trunk/org.rubypeople.rdt.core/ruby/lib/openssl.rb trunk/org.rubypeople.rdt.core/ruby/lib/parsedate.rb trunk/org.rubypeople.rdt.core/ruby/lib/precision.rb trunk/org.rubypeople.rdt.core/ruby/lib/proc.rb trunk/org.rubypeople.rdt.core/ruby/lib/process.rb trunk/org.rubypeople.rdt.core/ruby/lib/range.rb trunk/org.rubypeople.rdt.core/ruby/lib/rangeerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/rational.rb trunk/org.rubypeople.rdt.core/ruby/lib/regexp.rb trunk/org.rubypeople.rdt.core/ruby/lib/regexperror.rb trunk/org.rubypeople.rdt.core/ruby/lib/runtimeerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/scripterror.rb trunk/org.rubypeople.rdt.core/ruby/lib/securityerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/signal.rb trunk/org.rubypeople.rdt.core/ruby/lib/signalexception.rb trunk/org.rubypeople.rdt.core/ruby/lib/singleforwardable.rb trunk/org.rubypeople.rdt.core/ruby/lib/standarderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/string.rb trunk/org.rubypeople.rdt.core/ruby/lib/struct.rb trunk/org.rubypeople.rdt.core/ruby/lib/symbol.rb trunk/org.rubypeople.rdt.core/ruby/lib/syntaxerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/systemcallerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/systemexit.rb trunk/org.rubypeople.rdt.core/ruby/lib/systemstackerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/thread.rb trunk/org.rubypeople.rdt.core/ruby/lib/threaderror.rb trunk/org.rubypeople.rdt.core/ruby/lib/threadgroup.rb trunk/org.rubypeople.rdt.core/ruby/lib/time.rb trunk/org.rubypeople.rdt.core/ruby/lib/trueclass.rb trunk/org.rubypeople.rdt.core/ruby/lib/typeerror.rb trunk/org.rubypeople.rdt.core/ruby/lib/unboundmethod.rb trunk/org.rubypeople.rdt.core/ruby/lib/zerodivisionerror.rb trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/AbstractOccurencesFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/BasicTypeGuess.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultOccurrencesFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultReferenceFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DefaultTypeInferrer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/IOccurrencesFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/IReferenceFinder.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ITypeGuess.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ITypeInferrer.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ReferenceTypeGuess.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/Scope.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/ScopingVisitor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/TypeInferenceHelper.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/TypeInferenceVisitor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/Variable.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/data/ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/data/ConstNodeTypeNames.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/data/TypicalMethodReturnNames.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/AttributeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/ClosestSpanningNodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/FirstPrecursorNodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/INodeAcceptor.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/MethodDefinitionLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/MethodInvocationLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/NodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/OffsetNodeLocator.java trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/util/ScopedNodeLocator.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/MarkOccurrencesTest.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/ReferenceMatchTest.java trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/TypeInferrerTest.java trunk/org.rubypeople.rdt.testunit/META-INF/MANIFEST.MF Copied: trunk/org.epic.regexp/META-INF (from rev 1583, branches/type_inferrence/trunk/org.epic.regexp/META-INF) Deleted: trunk/org.epic.regexp/META-INF/MANIFEST.MF =================================================================== --- branches/type_inferrence/trunk/org.epic.regexp/META-INF/MANIFEST.MF 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.epic.regexp/META-INF/MANIFEST.MF 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,17 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Regexp Plug-in -Bundle-SymbolicName: org.epic.regexp; singleton:=true -Bundle-Version: 0.1.4 -Bundle-ClassPath: regexp.jar, - gnu-regexp-1.1.4.jar -Bundle-Activator: org.epic.regexp.RegExpPlugin -Bundle-Vendor: Epic Project -Bundle-Localization: plugin -Export-Package: gnu.regexp, - org.epic.regexp, - org.epic.regexp.views -Require-Bundle: org.eclipse.ui, - org.eclipse.core.runtime, - org.eclipse.core.resources -Eclipse-LazyStart: true Copied: trunk/org.epic.regexp/META-INF/MANIFEST.MF (from rev 1583, branches/type_inferrence/trunk/org.epic.regexp/META-INF/MANIFEST.MF) =================================================================== --- trunk/org.epic.regexp/META-INF/MANIFEST.MF (rev 0) +++ trunk/org.epic.regexp/META-INF/MANIFEST.MF 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,17 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Regexp Plug-in +Bundle-SymbolicName: org.epic.regexp; singleton:=true +Bundle-Version: 0.1.4 +Bundle-ClassPath: regexp.jar, + gnu-regexp-1.1.4.jar +Bundle-Activator: org.epic.regexp.RegExpPlugin +Bundle-Vendor: Epic Project +Bundle-Localization: plugin +Export-Package: gnu.regexp, + org.epic.regexp, + org.epic.regexp.views +Require-Bundle: org.eclipse.ui, + org.eclipse.core.runtime, + org.eclipse.core.resources +Eclipse-LazyStart: true Modified: trunk/org.epic.regexp/build.properties =================================================================== --- trunk/org.epic.regexp/build.properties 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.epic.regexp/build.properties 2006-08-25 01:53:42 UTC (rev 1584) @@ -3,4 +3,5 @@ *.jar,\ regexp.jar,\ shortcuts,\ - icons/ + icons/,\ + META-INF/ Modified: trunk/org.epic.regexp/plugin.xml =================================================================== --- trunk/org.epic.regexp/plugin.xml 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.epic.regexp/plugin.xml 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,27 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.0"?> -<plugin - id="org.epic.regexp" - name="Regexp Plug-in" - version="0.1.4" - provider-name="Epic Project" - class="org.epic.regexp.RegExpPlugin"> +<plugin> - <runtime> - <library name="regexp.jar"> - <export name="*"/> - </library> - <library name="gnu-regexp-1.1.4.jar"> - <export name="*"/> - </library> - </runtime> - <requires> - <import plugin="org.eclipse.ui"/> - <import plugin="org.eclipse.core.runtime"/> - <import plugin="org.eclipse.core.resources"/> - </requires> - - <extension + <extension point="org.eclipse.ui.views"> <view name="RegExp" Copied: trunk/org.jruby (from rev 1583, branches/type_inferrence/trunk/org.jruby) Deleted: trunk/org.jruby/.classpath =================================================================== --- branches/type_inferrence/trunk/org.jruby/.classpath 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.jruby/.classpath 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry exported="true" kind="lib" path="lib/jruby.jar"/> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> - <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> - <classpathentry kind="output" path="bin"/> -</classpath> Copied: trunk/org.jruby/.classpath (from rev 1583, branches/type_inferrence/trunk/org.jruby/.classpath) =================================================================== --- trunk/org.jruby/.classpath (rev 0) +++ trunk/org.jruby/.classpath 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry exported="true" kind="lib" path="lib/jruby.jar"/> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="output" path="bin"/> +</classpath> Deleted: trunk/org.jruby/.project =================================================================== --- branches/type_inferrence/trunk/org.jruby/.project 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.jruby/.project 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>org.jruby</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.pde.ManifestBuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.pde.SchemaBuilder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.pde.PluginNature</nature> - <nature>org.eclipse.jdt.core.javanature</nature> - </natures> -</projectDescription> Copied: trunk/org.jruby/.project (from rev 1583, branches/type_inferrence/trunk/org.jruby/.project) =================================================================== --- trunk/org.jruby/.project (rev 0) +++ trunk/org.jruby/.project 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.jruby</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> Copied: trunk/org.jruby/META-INF (from rev 1583, branches/type_inferrence/trunk/org.jruby/META-INF) Deleted: trunk/org.jruby/META-INF/MANIFEST.MF =================================================================== --- branches/type_inferrence/trunk/org.jruby/META-INF/MANIFEST.MF 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.jruby/META-INF/MANIFEST.MF 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,40 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: Jruby Plug-in -Bundle-SymbolicName: org.jruby -Bundle-Version: 1.0.0 -Bundle-Activator: org.jruby.Activator -Bundle-Localization: plugin -Require-Bundle: org.eclipse.core.runtime -Eclipse-LazyStart: false -Bundle-ClassPath: lib/jruby.jar, - . -Export-Package: org.ablaf.ast, - org.ablaf.internal.ast, - org.jruby, - org.jruby.ast, - org.jruby.ast.types, - org.jruby.ast.util, - org.jruby.ast.visitor, - org.jruby.common, - org.jruby.environment, - org.jruby.evaluator, - org.jruby.exceptions, - org.jruby.internal.runtime, - org.jruby.internal.runtime.methods, - org.jruby.javasupport, - org.jruby.javasupport.bsf, - org.jruby.javasupport.util, - org.jruby.lexer.yacc, - org.jruby.libraries, - org.jruby.main, - org.jruby.parser, - org.jruby.runtime, - org.jruby.runtime.builtin, - org.jruby.runtime.builtin.meta, - org.jruby.runtime.callback, - org.jruby.runtime.load, - org.jruby.runtime.marshal, - org.jruby.util, - org.jruby.util.collections, - org.jruby.yaml Copied: trunk/org.jruby/META-INF/MANIFEST.MF (from rev 1583, branches/type_inferrence/trunk/org.jruby/META-INF/MANIFEST.MF) =================================================================== --- trunk/org.jruby/META-INF/MANIFEST.MF (rev 0) +++ trunk/org.jruby/META-INF/MANIFEST.MF 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,40 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Jruby Plug-in +Bundle-SymbolicName: org.jruby +Bundle-Version: 1.0.0 +Bundle-Activator: org.jruby.Activator +Bundle-Localization: plugin +Require-Bundle: org.eclipse.core.runtime +Eclipse-LazyStart: false +Bundle-ClassPath: lib/jruby.jar, + . +Export-Package: org.ablaf.ast, + org.ablaf.internal.ast, + org.jruby, + org.jruby.ast, + org.jruby.ast.types, + org.jruby.ast.util, + org.jruby.ast.visitor, + org.jruby.common, + org.jruby.environment, + org.jruby.evaluator, + org.jruby.exceptions, + org.jruby.internal.runtime, + org.jruby.internal.runtime.methods, + org.jruby.javasupport, + org.jruby.javasupport.bsf, + org.jruby.javasupport.util, + org.jruby.lexer.yacc, + org.jruby.libraries, + org.jruby.main, + org.jruby.parser, + org.jruby.runtime, + org.jruby.runtime.builtin, + org.jruby.runtime.builtin.meta, + org.jruby.runtime.callback, + org.jruby.runtime.load, + org.jruby.runtime.marshal, + org.jruby.util, + org.jruby.util.collections, + org.jruby.yaml Copied: trunk/org.jruby/bin (from rev 1583, branches/type_inferrence/trunk/org.jruby/bin) Deleted: trunk/org.jruby/build.properties =================================================================== --- branches/type_inferrence/trunk/org.jruby/build.properties 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.jruby/build.properties 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,5 +0,0 @@ -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - .,\ - lib/jruby.jar Copied: trunk/org.jruby/build.properties (from rev 1583, branches/type_inferrence/trunk/org.jruby/build.properties) =================================================================== --- trunk/org.jruby/build.properties (rev 0) +++ trunk/org.jruby/build.properties 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,5 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + lib/jruby.jar Copied: trunk/org.jruby/lib (from rev 1583, branches/type_inferrence/trunk/org.jruby/lib) Deleted: trunk/org.jruby/lib/jruby.jar =================================================================== (Binary files differ) Copied: trunk/org.jruby/lib/jruby.jar (from rev 1583, branches/type_inferrence/trunk/org.jruby/lib/jruby.jar) =================================================================== (Binary files differ) Modified: trunk/org.rubypeople.rdt-feature/feature.xml =================================================================== --- trunk/org.rubypeople.rdt-feature/feature.xml 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt-feature/feature.xml 2006-08-25 01:53:42 UTC (rev 1584) @@ -246,7 +246,7 @@ <includes id="org.rubypeople.rdt.source" version="0.0.0"/> - + <requires> <import plugin="org.eclipse.core.resources"/> <import plugin="org.eclipse.debug.core"/> @@ -329,4 +329,11 @@ install-size="0" version="0.0.0"/> + <plugin + id="org.jruby" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + </feature> Modified: trunk/org.rubypeople.rdt.astviewer/.classpath =================================================================== --- trunk/org.rubypeople.rdt.astviewer/.classpath 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.astviewer/.classpath 2006-08-25 01:53:42 UTC (rev 1584) @@ -3,6 +3,6 @@ <classpathentry kind="src" path="src"/> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> - <classpathentry sourcepath="/org.jruby/src" kind="lib" path="/org.rubypeople.rdt.core/lib/jruby.jar"/> + <classpathentry kind="lib" path="/Users/cwilliams/Documents/merge/trunk/org.jruby/lib/jruby.jar"/> <classpathentry kind="output" path="bin"/> </classpath> Modified: trunk/org.rubypeople.rdt.core/.classpath =================================================================== (Binary files differ) Modified: trunk/org.rubypeople.rdt.core/META-INF/MANIFEST.MF =================================================================== --- trunk/org.rubypeople.rdt.core/META-INF/MANIFEST.MF 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/META-INF/MANIFEST.MF 2006-08-25 01:53:42 UTC (rev 1584) @@ -3,39 +3,11 @@ Bundle-Name: %Plugin.name Bundle-SymbolicName: org.rubypeople.rdt.core; singleton:=true Bundle-Version: 0.0.0 -Bundle-ClassPath: rdtcore.jar, - lib/jruby.jar +Bundle-ClassPath: rdtcore.jar Bundle-Activator: org.rubypeople.rdt.core.RubyCore Bundle-Vendor: %providerName Bundle-Localization: plugin Export-Package: ., - builtin, - org.ablaf.ast, - org.ablaf.internal.ast, - org.jruby, - org.jruby.ast, - org.jruby.ast.types, - org.jruby.ast.util, - org.jruby.ast.visitor, - org.jruby.common, - org.jruby.evaluator, - org.jruby.exceptions, - org.jruby.internal.runtime, - org.jruby.internal.runtime.methods, - org.jruby.javasupport, - org.jruby.javasupport.bsf, - org.jruby.lexer.yacc, - org.jruby.libraries, - org.jruby.main, - org.jruby.parser, - org.jruby.runtime, - org.jruby.runtime.builtin, - org.jruby.runtime.builtin.meta, - org.jruby.runtime.callback, - org.jruby.runtime.load, - org.jruby.runtime.marshal, - org.jruby.util, - org.jruby.util.collections, org.rubypeople.rdt.core, org.rubypeople.rdt.core.formatter, org.rubypeople.rdt.core.parser, @@ -45,9 +17,13 @@ org.rubypeople.rdt.internal.core.parser, org.rubypeople.rdt.internal.core.symbols, org.rubypeople.rdt.internal.core.util, - org.rubypeople.rdt.internal.formatter + org.rubypeople.rdt.internal.formatter, + org.rubypeople.rdt.internal.ti, + org.rubypeople.rdt.internal.ti.util, + org.rubypeople.rdt.internal.codeassist Require-Bundle: org.eclipse.core.runtime, org.eclipse.core.resources, org.eclipse.team.core, - org.eclipse.jface.text -Eclipse-AutoStart: true + org.eclipse.jface.text, + org.jruby +Eclipse-LazyStart: true Modified: trunk/org.rubypeople.rdt.core/build.properties =================================================================== --- trunk/org.rubypeople.rdt.core/build.properties 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/build.properties 2006-08-25 01:53:42 UTC (rev 1584) @@ -6,6 +6,5 @@ META-INF/ source.rdtcore.jar = src/ plugin = org.rubypeople.rdt.core -plugin.name = rdtcorejars.compile.order = rdtcore.jar,\ - lib/jruby.jar +plugin.name = rdtcorejars.compile.order = rdtcore.jar jars.compile.order = rdtcore.jar Deleted: trunk/org.rubypeople.rdt.core/lib/jruby.jar =================================================================== (Binary files differ) Copied: trunk/org.rubypeople.rdt.core/ruby (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby) Deleted: trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,81 +0,0 @@ -OUTPUT_PATH = "ruby/lib/" - -def file_name(klass) - file_name = OUTPUT_PATH + klass.to_s.downcase - file_name.gsub!("::", "/") - file_name << ".rb" - return file_name -end - -def dir_names(file_name) - last_slash = file_name.rindex("/") - return nil if last_slash.nil? - file_name[0...last_slash] -end - -def print_method(f, method, method_name, singleton = false) - f << " def " - f << "self." if singleton - f << method_name.to_s - if !method.nil? and method.arity != 0 - # TODO We need to handle methods that take blocks! - f << "(" - if method.arity < 0 - args = [] - (method.arity.abs + 1).times {|i| args << "arg#{i}" } - args << "*rest" - f << args.join(", ") - else - args = [] - method.arity.times {|i| args << "arg#{i}" } - f << args.join(", ") - end - f << ")" - end - f << "\n end\n" -end - -require 'FileUtils' -@klasses = Module.constants.select {|c| ["Class", "Module"].include?(eval("#{c}.class").to_s) } -@klasses = @klasses.collect {|k| eval("#{k}")} -@klasses = @klasses.uniq.sort_by {|klass| klass.to_s } -@klasses.each do |klass| - next if klass.to_s[0].chr == "f" # TODO Skip if first char is lowercase - file_name = file_name(klass) - dirs = dir_names(file_name) - FileUtils.mkdir_p(dirs) if !dirs.nil? and !File.exist?(file_name) - open(file_name, 'w') do |f| - f << "#{klass.class.to_s.downcase} #{klass}" - f << " < #{klass.superclass.to_s }" if klass.respond_to?(:superclass) and !klass.superclass.nil? - f << "\n" - klass.included_modules.each {|mod| f << " include #{mod.to_s}\n" unless mod.to_s == "Kernel" && klass.to_s != "Object"} - f << "\n" - klass.methods(false).each do |method_name| - method = eval("#{klass}").method(method_name) rescue nil - print_method(f, method, method_name.to_s, true) - end - # TODO Fix it so we can get a hold of the module instance methods properly - klass.instance_methods(false).each do |method_name| - begin - obj = if klass.class.to_s == "Module" then klass else klass.new end - method = obj.method(method_name.to_s) - rescue StandardError => e - puts e - # TODO If we can't create an instance of a class, generate dynamic subclass where we can, and then - # grab methods from there - begin - # If we're a module, we may need to force the function to be more visible to grab it - obj.module_eval do - module_function(method_name.to_s) - end - method = obj.method(method_name.to_s) - rescue StandardError => e - puts e - method = nil - end - end - print_method(f, method, method_name.to_s) - end - f << "end\n" - end -end \ No newline at end of file Copied: trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/core_stubber.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,81 @@ +OUTPUT_PATH = "ruby/lib/" + +def file_name(klass) + file_name = OUTPUT_PATH + klass.to_s.downcase + file_name.gsub!("::", "/") + file_name << ".rb" + return file_name +end + +def dir_names(file_name) + last_slash = file_name.rindex("/") + return nil if last_slash.nil? + file_name[0...last_slash] +end + +def print_method(f, method, method_name, singleton = false) + f << " def " + f << "self." if singleton + f << method_name.to_s + if !method.nil? and method.arity != 0 + # TODO We need to handle methods that take blocks! + f << "(" + if method.arity < 0 + args = [] + (method.arity.abs + 1).times {|i| args << "arg#{i}" } + args << "*rest" + f << args.join(", ") + else + args = [] + method.arity.times {|i| args << "arg#{i}" } + f << args.join(", ") + end + f << ")" + end + f << "\n end\n" +end + +require 'FileUtils' +@klasses = Module.constants.select {|c| ["Class", "Module"].include?(eval("#{c}.class").to_s) } +@klasses = @klasses.collect {|k| eval("#{k}")} +@klasses = @klasses.uniq.sort_by {|klass| klass.to_s } +@klasses.each do |klass| + next if klass.to_s[0].chr == "f" # TODO Skip if first char is lowercase + file_name = file_name(klass) + dirs = dir_names(file_name) + FileUtils.mkdir_p(dirs) if !dirs.nil? and !File.exist?(file_name) + open(file_name, 'w') do |f| + f << "#{klass.class.to_s.downcase} #{klass}" + f << " < #{klass.superclass.to_s }" if klass.respond_to?(:superclass) and !klass.superclass.nil? + f << "\n" + klass.included_modules.each {|mod| f << " include #{mod.to_s}\n" unless mod.to_s == "Kernel" && klass.to_s != "Object"} + f << "\n" + klass.methods(false).each do |method_name| + method = eval("#{klass}").method(method_name) rescue nil + print_method(f, method, method_name.to_s, true) + end + # TODO Fix it so we can get a hold of the module instance methods properly + klass.instance_methods(false).each do |method_name| + begin + obj = if klass.class.to_s == "Module" then klass else klass.new end + method = obj.method(method_name.to_s) + rescue StandardError => e + puts e + # TODO If we can't create an instance of a class, generate dynamic subclass where we can, and then + # grab methods from there + begin + # If we're a module, we may need to force the function to be more visible to grab it + obj.module_eval do + module_function(method_name.to_s) + end + method = obj.method(method_name.to_s) + rescue StandardError => e + puts e + method = nil + end + end + print_method(f, method, method_name.to_s) + end + f << "end\n" + end +end \ No newline at end of file Copied: trunk/org.rubypeople.rdt.core/ruby/lib (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib) Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,3 +0,0 @@ -class ArgumentError < StandardError - -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/argumenterror.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,3 @@ +class ArgumentError < StandardError + +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/array.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/array.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/array.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,148 +0,0 @@ -class Array < Object - include Enumerable - - def self.[](arg0, arg1, *rest) - end - def concat(arg0) - end - def delete_at(arg0) - end - def include?(arg0) - end - def &(arg0) - end - def reverse_each - end - def flatten - end - def collect! - end - def size - end - def uniq! - end - def first(arg0, arg1, *rest) - end - def collect - end - def fill(arg0, arg1, *rest) - end - def reject! - end - def reverse - end - def *(arg0) - end - def insert(arg0, arg1, *rest) - end - def pack(arg0) - end - def unshift(arg0, arg1, *rest) - end - def compact - end - def transpose - end - def +(arg0) - end - def replace(arg0) - end - def at(arg0) - end - def select(arg0, arg1, *rest) - end - def zip(arg0, arg1, *rest) - end - def pop - end - def uniq - end - def to_s - end - def -(arg0) - end - def eql?(arg0) - end - def index(arg0) - end - def delete_if - end - def map! - end - def indexes(arg0, arg1, *rest) - end - def hash - end - def [](arg0, arg1, *rest) - end - def []=(arg0, arg1, *rest) - end - def last(arg0, arg1, *rest) - end - def |(arg0) - end - def map - end - def assoc(arg0) - end - def <<(arg0) - end - def values_at(arg0, arg1, *rest) - end - def each_index - end - def sort! - end - def length - end - def slice!(arg0, arg1, *rest) - end - def fetch(arg0, arg1, *rest) - end - def reject - end - def delete(arg0) - end - def clear - end - def sort - end - def each - end - def flatten! - end - def join(arg0, arg1, *rest) - end - def shift - end - def empty? - end - def inspect - end - def rindex(arg0) - end - def frozen? - end - def to_ary - end - def <=>(arg0) - end - def indices(arg0, arg1, *rest) - end - def ==(arg0) - end - def reverse! - end - def nitems - end - def slice(arg0, arg1, *rest) - end - def push(arg0, arg1, *rest) - end - def to_a - end - def rassoc(arg0) - end - def compact! - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/array.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/array.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/array.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/array.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,148 @@ +class Array < Object + include Enumerable + + def self.[](arg0, arg1, *rest) + end + def concat(arg0) + end + def delete_at(arg0) + end + def include?(arg0) + end + def &(arg0) + end + def reverse_each + end + def flatten + end + def collect! + end + def size + end + def uniq! + end + def first(arg0, arg1, *rest) + end + def collect + end + def fill(arg0, arg1, *rest) + end + def reject! + end + def reverse + end + def *(arg0) + end + def insert(arg0, arg1, *rest) + end + def pack(arg0) + end + def unshift(arg0, arg1, *rest) + end + def compact + end + def transpose + end + def +(arg0) + end + def replace(arg0) + end + def at(arg0) + end + def select(arg0, arg1, *rest) + end + def zip(arg0, arg1, *rest) + end + def pop + end + def uniq + end + def to_s + end + def -(arg0) + end + def eql?(arg0) + end + def index(arg0) + end + def delete_if + end + def map! + end + def indexes(arg0, arg1, *rest) + end + def hash + end + def [](arg0, arg1, *rest) + end + def []=(arg0, arg1, *rest) + end + def last(arg0, arg1, *rest) + end + def |(arg0) + end + def map + end + def assoc(arg0) + end + def <<(arg0) + end + def values_at(arg0, arg1, *rest) + end + def each_index + end + def sort! + end + def length + end + def slice!(arg0, arg1, *rest) + end + def fetch(arg0, arg1, *rest) + end + def reject + end + def delete(arg0) + end + def clear + end + def sort + end + def each + end + def flatten! + end + def join(arg0, arg1, *rest) + end + def shift + end + def empty? + end + def inspect + end + def rindex(arg0) + end + def frozen? + end + def to_ary + end + def <=>(arg0) + end + def indices(arg0, arg1, *rest) + end + def ==(arg0) + end + def reverse! + end + def nitems + end + def slice(arg0, arg1, *rest) + end + def push(arg0, arg1, *rest) + end + def to_a + end + def rassoc(arg0) + end + def compact! + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,67 +0,0 @@ -class Bignum < Integer - include Precision - include Comparable - - def div - end - def ** - end - def eql? - end - def size - end - def - - end - def <=> - end - def remainder - end - def [] - end - def == - end - def hash - end - def / - end - def quo - end - def | - end - def to_s - end - def coerce - end - def % - end - def << - end - def rpower - end - def modulo - end - def & - end - def ~ - end - def >> - end - def ^ - end - def to_f - end - def power! - end - def rdiv - end - def divmod - end - def * - end - def -@ - end - def + - end - def abs - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/bignum.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,67 @@ +class Bignum < Integer + include Precision + include Comparable + + def div + end + def ** + end + def eql? + end + def size + end + def - + end + def <=> + end + def remainder + end + def [] + end + def == + end + def hash + end + def / + end + def quo + end + def | + end + def to_s + end + def coerce + end + def % + end + def << + end + def rpower + end + def modulo + end + def & + end + def ~ + end + def >> + end + def ^ + end + def to_f + end + def power! + end + def rdiv + end + def divmod + end + def * + end + def -@ + end + def + + end + def abs + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,5 +0,0 @@ -class Binding < Object - - def clone - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/binding.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,5 @@ +class Binding < Object + + def clone + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,46 +0,0 @@ -module Buffering - include Enumerable - - def getc - end - def ungetc(arg0) - end - def close - end - def sync=(arg0) - end - def gets(arg0, arg1, *rest) - end - def printf(arg0, arg1, *rest) - end - def read(arg0, arg1, *rest) - end - def readchar - end - def <<(arg0) - end - def puts(arg0, arg1, *rest) - end - def each(arg0, arg1, *rest) - end - def each_byte - end - def readlines(arg0, arg1, *rest) - end - def eof - end - def write(arg0) - end - def each_line(arg0, arg1, *rest) - end - def flush - end - def sync - end - def readline(arg0, arg1, *rest) - end - def eof? - end - def print(arg0, arg1, *rest) - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/buffering.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,46 @@ +module Buffering + include Enumerable + + def getc + end + def ungetc(arg0) + end + def close + end + def sync=(arg0) + end + def gets(arg0, arg1, *rest) + end + def printf(arg0, arg1, *rest) + end + def read(arg0, arg1, *rest) + end + def readchar + end + def <<(arg0) + end + def puts(arg0, arg1, *rest) + end + def each(arg0, arg1, *rest) + end + def each_byte + end + def readlines(arg0, arg1, *rest) + end + def eof + end + def write(arg0) + end + def each_line(arg0, arg1, *rest) + end + def flush + end + def sync + end + def readline(arg0, arg1, *rest) + end + def eof? + end + def print(arg0, arg1, *rest) + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/class.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/class.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/class.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,9 +0,0 @@ -class Class < Module - - def new(arg0, arg1, *rest) - end - def allocate - end - def superclass - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/class.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/class.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/class.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/class.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,9 @@ +class Class < Module + + def new(arg0, arg1, *rest) + end + def allocate + end + def superclass + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,15 +0,0 @@ -module Comparable - - def between?(arg0, arg1) - end - def ==(arg0) - end - def >=(arg0) - end - def <(arg0) - end - def <=(arg0) - end - def >(arg0) - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/comparable.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,15 @@ +module Comparable + + def between?(arg0, arg1) + end + def ==(arg0) + end + def >=(arg0) + end + def <(arg0) + end + def <=(arg0) + end + def >(arg0) + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/config.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/config.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/config.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,9 +0,0 @@ -module Config - - def self.gem_original_datadir(arg0) - end - def self.datadir(arg0) - end - def self.expand(arg0, arg1, arg2, *rest) - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/config.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/config.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/config.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/config.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,9 @@ +module Config + + def self.gem_original_datadir(arg0) + end + def self.datadir(arg0) + end + def self.expand(arg0, arg1, arg2, *rest) + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,7 +0,0 @@ -class Continuation < Object - - def [] - end - def call - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/continuation.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,7 @@ +class Continuation < Object + + def [] + end + def call + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/data.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/data.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/data.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,3 +0,0 @@ -class Data < Object - -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/data.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/data.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/data.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/data.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,3 @@ +class Data < Object + +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/date.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/date.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/date.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,15 +0,0 @@ -class Date < Object - - def self.zone_to_diff(arg0) - end - def self._strptime(arg0, arg1, arg2, *rest) - end - def self._parse(arg0, arg1, arg2, *rest) - end - def asctime - end - def ctime - end - def strftime(arg0, arg1, *rest) - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/date.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/date.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/date.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/date.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,15 @@ +class Date < Object + + def self.zone_to_diff(arg0) + end + def self._strptime(arg0, arg1, arg2, *rest) + end + def self._parse(arg0, arg1, arg2, *rest) + end + def asctime + end + def ctime + end + def strftime(arg0, arg1, *rest) + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,7 +0,0 @@ -class DateTime < Date - - def self._strptime(arg0, arg1, arg2, *rest) - end - def strftime(arg0, arg1, *rest) - end -end Copied: trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb (from rev 1583, branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb) =================================================================== --- trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb (rev 0) +++ trunk/org.rubypeople.rdt.core/ruby/lib/datetime.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -0,0 +1,7 @@ +class DateTime < Date + + def self._strptime(arg0, arg1, arg2, *rest) + end + def strftime(arg0, arg1, *rest) + end +end Deleted: trunk/org.rubypeople.rdt.core/ruby/lib/digest.rb =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/ruby/lib/digest.rb 2006-08-23 19:41:20 UTC (rev 1583) +++ trunk/org.rubypeople.rdt.core/ruby/lib/digest.rb 2006-08-25 01:53:42 UTC (rev 1584) @@ -1,3 +0,0 @@ -module Digest - -end Copied: trunk/org.rubypeople... [truncated message content] |
|
From: <mir...@us...> - 2006-08-23 19:41:28
|
Revision: 1583 Author: mirkostocker Date: 2006-08-23 12:41:20 -0700 (Wed, 23 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1583&view=rev Log Message: ----------- Double-clicking on an entry in the testunit-hierarchy didn't highlight the last character of the name. I'd like to write a test for this but I'm not sure how, if somebody has an advice... Modified Paths: -------------- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/util/PositionBasedEditorOpener.java Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/util/PositionBasedEditorOpener.java =================================================================== --- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/util/PositionBasedEditorOpener.java 2006-08-21 12:36:33 UTC (rev 1582) +++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/util/PositionBasedEditorOpener.java 2006-08-23 19:41:20 UTC (rev 1583) @@ -28,7 +28,7 @@ IDocument document = editor.getDocumentProvider().getDocument(editor.getEditorInput()); int start = position.getStartOffset(); int end = position.getEndOffset(); - editor.selectAndReveal(start, end-start); + editor.selectAndReveal(start, end-start+1); } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <mir...@us...> - 2006-08-21 12:36:44
|
Revision: 1582 Author: mirkostocker Date: 2006-08-21 05:36:33 -0700 (Mon, 21 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1582&view=rev Log Message: ----------- add a test for ticket #115 and added TS_UiSymbols to TS_Ui Modified Paths: -------------- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TS_InternalUiText.java trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/ui/tests/TS_Ui.java Added Paths: ----------- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyWordFinder.java Added: trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyWordFinder.java =================================================================== --- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyWordFinder.java (rev 0) +++ trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TC_RubyWordFinder.java 2006-08-21 12:36:33 UTC (rev 1582) @@ -0,0 +1,54 @@ +package org.rubypeople.rdt.internal.ui.text; + +import junit.framework.TestCase; + +import org.eclipse.jface.text.Document; +import org.eclipse.jface.text.IRegion; + +public class TC_RubyWordFinder extends TestCase { + + private static final String document = + "class Product < ActiveRecord::Base\n"+ + " validates_presence_of :title, :description, :image_url\n"+ + "end"; + + private IRegion findWord(int offset) { + return RubyWordFinder.findWord(new Document(document), offset); + } + + private boolean regionEquals(IRegion region, int offset, int length){ + return region.getLength() == length && region.getLength() == length; + } + + private boolean isWordAtPosition(String word, int cursorPosition) { + return regionEquals(findWord(cursorPosition), document.indexOf(word), word.length()); + } + + public void testFindFirstWord() { + assertTrue (isWordAtPosition("class", 0)); + assertTrue (isWordAtPosition("class", 3)); + assertTrue (isWordAtPosition("class", 4)); + assertFalse(isWordAtPosition("class", 5)); + + assertNull(findWord(-1)); + } + + public void testFindWord() { + assertTrue (isWordAtPosition("Product", 6)); + assertFalse(isWordAtPosition("Product", 5)); + assertTrue (isWordAtPosition("Product", 12)); + + assertTrue (isWordAtPosition("ActiveRecord::Base", 16)); + + assertTrue (isWordAtPosition("<", 14)); + } + + public void testFindLastWord() { + assertTrue (isWordAtPosition("end", document.length() -1)); + assertTrue (isWordAtPosition("end", document.length() -2)); + assertTrue (isWordAtPosition("end", document.length() -3)); + assertFalse(isWordAtPosition("end", document.length() -4)); + + assertNull(findWord(document.length())); + } +} Modified: trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TS_InternalUiText.java =================================================================== --- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TS_InternalUiText.java 2006-08-21 08:48:54 UTC (rev 1581) +++ trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/internal/ui/text/TS_InternalUiText.java 2006-08-21 12:36:33 UTC (rev 1582) @@ -8,6 +8,7 @@ TestSuite suite = new TestSuite("org.rubypeople.rdt.internal.ui.text"); suite.addTestSuite(TC_RubyPartitionScanner.class); suite.addTestSuite(RubyPartitionScannerTest.class); + suite.addTestSuite(TC_RubyWordFinder.class); return suite; } } Modified: trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/ui/tests/TS_Ui.java =================================================================== --- trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/ui/tests/TS_Ui.java 2006-08-21 08:48:54 UTC (rev 1581) +++ trunk/org.rubypeople.rdt.ui.tests/src/org/rubypeople/rdt/ui/tests/TS_Ui.java 2006-08-21 12:36:33 UTC (rev 1582) @@ -6,6 +6,7 @@ import org.rubypeople.rdt.internal.ui.TS_InternalUi; import org.rubypeople.rdt.internal.ui.rubyeditor.TS_InternalUiRubyEditor; import org.rubypeople.rdt.internal.ui.search.TS_InternalUiRubySearch; +import org.rubypeople.rdt.internal.ui.symbols.TS_UiSymbols; import org.rubypeople.rdt.internal.ui.text.TS_InternalUiText; public class TS_Ui { @@ -15,6 +16,7 @@ suite.addTest(TS_InternalUiRubyEditor.suite()); suite.addTest(TS_InternalUiText.suite()); suite.addTest(TS_InternalUiRubySearch.suite()); + suite.addTest(TS_UiSymbols.suite()); return suite; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
Revision: 1581 Author: jasonpmorrison Date: 2006-08-21 01:48:54 -0700 (Mon, 21 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1581&view=rev Log Message: ----------- * Ooops - looks like MethodDefinitionLocator got re-appropriated. Replaced its usage in RubyCompletionProcessor with usage of ScopedNodeLocator. Modified Paths: -------------- branches/type_inferrence/trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java Modified: branches/type_inferrence/trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java 2006-08-21 08:41:58 UTC (rev 1580) +++ branches/type_inferrence/trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/text/ruby/RubyCompletionProcessor.java 2006-08-21 08:48:54 UTC (rev 1581) @@ -594,7 +594,15 @@ } // Get method names defined by DefnNodes and DefsNodes - elements.addAll( MethodDefinitionLocator.Instance().findMethodDefinitionsInScope(typeNode) ); + List<Node> methodDefinitions = ScopedNodeLocator.Instance().findNodesInScope(typeNode, new INodeAcceptor() { + public boolean doesAccept(Node node) { + return ( node instanceof DefnNode ) || ( node instanceof DefsNode ); + } + }); + for ( Node methodDefinition : methodDefinitions ) { + if ( methodDefinition instanceof DefnNode ) { elements.add( ((DefnNode)methodDefinition).getName() ); } + if ( methodDefinition instanceof DefsNode ) { elements.add( ((DefsNode)methodDefinition).getName() ); } + } // Get instance and class vars defined by [c]attr_* calls elements.addAll( AttributeLocator.Instance().findInstanceAttributesInScope(typeNode) ); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
Revision: 1580 Author: jasonpmorrison Date: 2006-08-21 01:41:58 -0700 (Mon, 21 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1580&view=rev Log Message: ----------- * Added test: Method return type varies with argument type * Added test: Factory method Modified Paths: -------------- branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java Modified: branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java 2006-08-21 08:41:14 UTC (rev 1579) +++ branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java 2006-08-21 08:41:58 UTC (rev 1580) @@ -143,6 +143,17 @@ String script = "class X;def foo;return 'bar';end;end;my_instance = X.new;my_var = my_instance.foo;my_var"; assertInfersTypeWithoutDoubt(inferrer.infer( script, 85), "String" ); } + + public void testMethodRetvalIsTypeCovariantWithArgument() throws Exception { + String script = "def foo(arg);return arg;end;my_var = foo(5);my_var"; + assertInfersTypeWithoutDoubt(inferrer.infer( script, 48), "Fixnum" ); + } + + public void testFactoryMethod() throws Exception { + String script = "class Klass;end;class KlassFactory;def build;return Klass.new;end;end;factory = KlassFactory.new;inst=factory.build;inst"; + assertInfersTypeWithoutDoubt(inferrer.infer( script, 119), "Klass" ); + } + //TODO: No dice yet on implicit retvals // public void testMethodImplicitRetval() throws Exception { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
|
From: <jas...@us...> - 2006-08-21 08:41:36
|
Revision: 1579 Author: jasonpmorrison Date: 2006-08-21 01:41:14 -0700 (Mon, 21 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1579&view=rev Log Message: ----------- * Update getCallNodeTypes' determination of receiver for FCallNode Modified Paths: -------------- branches/type_inferrence/trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrer.java Modified: branches/type_inferrence/trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrer.java =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrer.java 2006-08-21 08:31:48 UTC (rev 1578) +++ branches/type_inferrence/trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrer.java 2006-08-21 08:41:14 UTC (rev 1579) @@ -530,6 +530,9 @@ } if ( node instanceof FCallNode ) { receiverTypeName = helper.getTypeNodeName(findEnclosingTypeNode( node )); + if ( receiverTypeName == null ) { + receiverTypeName = "Kernel"; + } } if ( node instanceof VCallNode ) { @@ -540,6 +543,7 @@ //TODO: Find method defnnode, sum types of its retval-exprs List<Node> defnNodes = findAllMethodDefinitions(receiverTypeName, methodName); + sysout("Receiver type name: " + receiverTypeName); sysout(" " + defnNodes.size() + " defnnodes found"); // For each send-expr, collect all retval-exprs List<Node> retvalExprs = new LinkedList<Node>(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
Revision: 1578 Author: jasonpmorrison Date: 2006-08-21 01:31:48 -0700 (Mon, 21 Aug 2006) ViewCVS: http://svn.sourceforge.net/rubyeclipse/?rev=1578&view=rev Log Message: ----------- * Tests for initial DataFlowTypeInferrer. Added Paths: ----------- branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java Added: branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java =================================================================== --- branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java (rev 0) +++ branches/type_inferrence/trunk/org.rubypeople.rdt.core.tests/src/org/rubypeople/rdt/internal/ti/DataFlowTypeInferrerTest.java 2006-08-21 08:31:48 UTC (rev 1578) @@ -0,0 +1,162 @@ +package org.rubypeople.rdt.internal.ti; + +import java.util.List; + +import junit.framework.TestCase; + +/** + * @author Jason + * + */ +public class DataFlowTypeInferrerTest extends TestCase { + + private ITypeInferrer inferrer; + public void setUp() { + inferrer = createTypeInferrer(); + } + + /** + * Shortcut for testing that a particular type is the only one inferred, + * and is inferred with 100% confidence + * @param guesses + * @param type + */ + private void assertInfersTypeWithoutDoubt(List<ITypeGuess> guesses, String type) { + assertEquals(1, guesses.size()); + ITypeGuess guess = guesses.get(0); + assertEquals(type, guess.getType()); + assertEquals(100, guess.getConfidence()); + } + + /** + * Shortcut for testing that two types are inferred, each with 50% confidence + * @param guesses + * @param type + * @param type2 + */ + + private void assertInfersTypeFiftyFifty( List<ITypeGuess> guesses, String type1, String type2 ) { + assertEquals(2, guesses.size()); + assertEquals( guesses.get(0).getType(), type1 ); + assertEquals( guesses.get(1).getType(), type2 ); + assertEquals( guesses.get(0).getConfidence(), 50 ); + assertEquals( guesses.get(1).getConfidence(), 50 ); + } + + + public void testFixnum() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("5", 0), "Fixnum"); + } + + public void testString() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("'string'", 3), "String"); + } + + public void testFixnumAssignment() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("var=5", 1), "Fixnum"); + } + + public void testLocalVariableAfterAssignment() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("x=5;x", 4), "Fixnum"); + } + + public void testLocalVariableAfterAssignmentInsideScope() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("module M;x=5;x;end", 13), "Fixnum"); + } + + public void testLocalVariableAfterAssignmentWithOverwrite() throws Exception { + +//FIXME: Currently returns sum of types (i.e. [String, Fixnum]). Try and track last-asgn-before-infer-point +//OLD: +// assertInfersTypeWithoutDoubt(inferrer.infer("x=5;x='foo';x", 12), "String"); +// assertInfersTypeWithoutDoubt(inferrer.infer("x=5;y='foo';x", 12), "Fixnum"); +//NEW (temporary): + assertInfersTypeFiftyFifty( inferrer.infer("x=5;x='foo';x", 12), "Fixnum", "String"); + } + + public void testLocalVariableAssignmentToLocalVariable() throws Exception { + String script = "x=5;y=x;x;y"; + assertInfersTypeWithoutDoubt(inferrer.infer(script, 8), "Fixnum"); // "x" + assertInfersTypeWithoutDoubt(inferrer.infer(script, 10), "Fixnum"); // "y" + } + + public void testLocalVariableAssignmentToLocalVariableTwice() throws Exception { + String script = "x=5;y=x;z=y;z;y;x"; + assertInfersTypeWithoutDoubt(inferrer.infer(script, 12), "Fixnum"); // "z" + assertInfersTypeWithoutDoubt(inferrer.infer(script, 14), "Fixnum"); // "y" + assertInfersTypeWithoutDoubt(inferrer.infer(script, 16), "Fixnum"); // "x" + } + + //FIXME: Will need access to core stubs +// public void testLocalVariableAssignmentToWellKnownMethodCall() throws Exception { +// assertInfersTypeWithoutDoubt(inferrer.infer("x=5.to_s;x", 9), "String"); +// } + + public void testLocalVariableAssignmentToClassInstantiation() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("x=Regexp.new;x", 13), "Regexp"); + } + + public void testInstVarAssignment() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("@x=5;@x", 6), "Fixnum"); + } + + public void testClassVarAssignment() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("class Klass;@@x=5;@@x;end", 20), "Fixnum"); + } + + public void testInstVarAssignmentInDifferentClassesWithSameName() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("class X;@var=5;@var;end;class Y;@var='string';@var;end", 16), "Fixnum"); + assertInfersTypeWithoutDoubt(inferrer.infer("class X;@var=5;@var;end;class Y;@var='string';@var;end", 48), "String"); + } + public void testGlobalVarAssignment() throws Exception { + assertInfersTypeWithoutDoubt(inferrer.infer("$x=5;$x", 6), "Fixnum"); + } + + public void testGlobalVarAssignmentInDifferentClassesWithSameName() throws Exception { + assertInfersTypeFiftyFifty( inferrer.infer("class X;$var=5;$var;end;class Y;$var='string';$var;end", 16 ), "Fixnum", "String"); + } + + public void testArg() throws Exception { + assertInfersTypeWithoutDoubt( inferrer.infer("def foo(var);var;end;foo(5)", 14), "Fixnum" ); + } + + public void testArgTwoDegree() throws Exception { + assertInfersTypeWithoutDoubt( inferrer.infer("def foo(var);var;end;def bar(var);foo(var);end;foo(5)", 14), "Fixnum" ); + } + + public void testArgTwoWay() throws Exception { + assertInfersTypeFiftyFifty( inferrer.infer("def foo(var);var;end;foo(5);foo('baz');", 14), "Fixnum", "String" ); + } + + public void testLocalVariableAssignmentWithSameNameAcrossTwoScopes() throws Exception { + String script = "module M;x=5;x;end;module N;x='foo';x;end"; + assertInfersTypeWithoutDoubt( inferrer.infer( script, 13 ), "Fixnum" ); + assertInfersTypeWithoutDoubt( inferrer.infer( script, 36 ), "String" ); + } + + public void testMethodRetval() throws Exception { + String script = "def foo;return 'baz';end;my_var = foo;my_var"; + assertInfersTypeWithoutDoubt(inferrer.infer( script, 40), "String" ); + } + + public void testInstanceObjectMethodRetval() throws Exception { + String script = "class X;def foo;return 'bar';end;end;my_instance = X.new;my_var = my_instance.foo;my_var"; + assertInfersTypeWithoutDoubt(inferrer.infer( script, 85), "String" ); + } + +//TODO: No dice yet on implicit retvals +// public void testMethodImplicitRetval() throws Exception { +// String script = "def foo;'baz';end;my_var = foo;my_var"; +// assertInfersTypeWithoutDoubt(inferrer.infer( script, 33), "String" ); +// } + + /** + * Override this method in subclasses so that we can test any + * implementation of ITypeInferrer the same way. + * @return an implementation of ITypeInferrer + */ + protected ITypeInferrer createTypeInferrer() { + return new DataFlowTypeInferrer(); + } + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |