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...> - 2007-05-08 14:12:35
|
Revision: 2447
http://svn.sourceforge.net/rubyeclipse/?rev=2447&view=rev
Author: cawilliams
Date: 2007-05-08 07:12:34 -0700 (Tue, 08 May 2007)
Log Message:
-----------
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/util/Util.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 2007-05-08 14:12:07 UTC (rev 2446)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyScript.java 2007-05-08 14:12:34 UTC (rev 2447)
@@ -659,6 +659,7 @@
*/
public IType findPrimaryType() {
String typeName = Util.getNameWithoutRubyLikeExtension(getElementName());
+ typeName = Util.identifierToConstant(typeName);
IType primaryType= getType(typeName);
if (primaryType.exists()) {
return primaryType;
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/util/Util.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/util/Util.java 2007-05-08 14:12:07 UTC (rev 2446)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/util/Util.java 2007-05-08 14:12:34 UTC (rev 2447)
@@ -1018,4 +1018,20 @@
return copy;
}
+ public static String identifierToConstant(String typeName) {
+ StringBuffer buffer = new StringBuffer();
+ boolean doNextAsUpper = true;
+ for (int i = 0; i < typeName.length(); i++) {
+ char c = typeName.charAt(i);
+ if (doNextAsUpper) {
+ buffer.append(Character.toUpperCase(c));
+ doNextAsUpper = false;
+ } else if (c == '_') {
+ doNextAsUpper = true;
+ } else {
+ buffer.append(c);
+ }
+ }
+ return buffer.toString();
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-08 14:12:09
|
Revision: 2446
http://svn.sourceforge.net/rubyeclipse/?rev=2446&view=rev
Author: cawilliams
Date: 2007-05-08 07:12:07 -0700 (Tue, 08 May 2007)
Log Message:
-----------
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/RubyConventions.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/RubyConventions.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/RubyConventions.java 2007-05-08 14:11:50 UTC (rev 2445)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/RubyConventions.java 2007-05-08 14:12:07 UTC (rev 2446)
@@ -60,9 +60,9 @@
* field name.
*
* @param id
- * the Java identifier
+ * the Ruby identifier
* @return a status object with code <code>IStatus.OK</code> if the given
- * identifier is a valid Java identifier, otherwise a status object
+ * identifier is a valid Ruby identifier, otherwise a status object
* indicating what is wrong with the identifier
*/
public static IStatus validateIdentifier(String id) {
@@ -112,4 +112,8 @@
public static IRubyModelStatus validateLoadpath(IRubyProject rubyProject, ILoadpathEntry[] rawCLoadpath, IPath projectOutputLocation) {
return LoadpathEntry.validateLoadpath(rubyProject, rawCLoadpath, projectOutputLocation);
}
+
+ public static IStatus validateMethodName(String methodName) {
+ return validateIdentifier(methodName);
+ }
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-08 14:11:51
|
Revision: 2445
http://svn.sourceforge.net/rubyeclipse/?rev=2445&view=rev
Author: cawilliams
Date: 2007-05-08 07:11:50 -0700 (Tue, 08 May 2007)
Log Message:
-----------
Modified Paths:
--------------
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/IRubyProject.java
trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyProject.java
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/IRubyProject.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/IRubyProject.java 2007-05-08 14:08:33 UTC (rev 2444)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/core/IRubyProject.java 2007-05-08 14:11:50 UTC (rev 2445)
@@ -166,4 +166,20 @@
* @since 1.0.0
*/
ISourceFolderRoot[] findSourceFolderRoots(ILoadpathEntry entry);
+
+ /**
+ * Same functionality as {@link #findType(String)} but also look for secondary
+ * types if given name does not match a compilation unit name.
+ *
+ * @param fullyQualifiedName the given fully qualified name
+ * @param progressMonitor the progress monitor to report progress to,
+ * or <code>null</code> if no progress monitor is provided
+ * @exception RubyModelException if this project does not exist or if an
+ * exception occurs while accessing its corresponding resource
+ * @return the first type found following this project's classpath
+ * with the given fully qualified name or <code>null</code> if none is found
+ * @see IType#getFullyQualifiedName(char)
+ * @since 1.0
+ */
+ IType findType(String fullyQualifiedName, IProgressMonitor progressMonitor) throws RubyModelException;
}
\ No newline at end of file
Modified: trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyProject.java
===================================================================
--- trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyProject.java 2007-05-08 14:08:33 UTC (rev 2444)
+++ trunk/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyProject.java 2007-05-08 14:11:50 UTC (rev 2445)
@@ -408,6 +408,15 @@
* @see org.rubypeople.rdt.core.IRubyProject#findType(java.lang.String)
*/
public IType findType(String fullyQualifiedName) {
+ return findType(fullyQualifiedName, null);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.rubypeople.rdt.core.IRubyProject#findType(java.lang.String, org.eclipse.core.runtime.IProgressMonitor)
+ */
+ public IType findType(String fullyQualifiedName, IProgressMonitor monitor) {
int index = fullyQualifiedName.lastIndexOf("::");
String className = null;
if (index == -1) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-08 14:08:34
|
Revision: 2444
http://svn.sourceforge.net/rubyeclipse/?rev=2444&view=rev
Author: cawilliams
Date: 2007-05-08 07:08:33 -0700 (Tue, 08 May 2007)
Log Message:
-----------
allow debug of *.rbw
Modified Paths:
--------------
trunk/org.rubypeople.rdt.debug.ui/plugin.xml
Modified: trunk/org.rubypeople.rdt.debug.ui/plugin.xml
===================================================================
--- trunk/org.rubypeople.rdt.debug.ui/plugin.xml 2007-05-08 14:08:08 UTC (rev 2443)
+++ trunk/org.rubypeople.rdt.debug.ui/plugin.xml 2007-05-08 14:08:33 UTC (rev 2444)
@@ -190,6 +190,9 @@
<test value="*.rbx"
property="org.eclipse.debug.ui.matchesPattern">
</test>
+ <test value="*.rbw"
+ property="org.eclipse.debug.ui.matchesPattern">
+ </test>
<test
property="org.eclipse.debug.ui.matchesContentType"
value="org.eclipse.ant.core.antBuildFile"/>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-08 14:08:10
|
Revision: 2443
http://svn.sourceforge.net/rubyeclipse/?rev=2443&view=rev
Author: cawilliams
Date: 2007-05-08 07:08:08 -0700 (Tue, 08 May 2007)
Log Message:
-----------
use new non-deprecated constants for project name attribute
Modified Paths:
--------------
trunk/org.rubypeople.rdt.debug.ui/src/org/rubypeople/rdt/internal/debug/ui/launcher/RubyApplicationShortcut.java
Modified: trunk/org.rubypeople.rdt.debug.ui/src/org/rubypeople/rdt/internal/debug/ui/launcher/RubyApplicationShortcut.java
===================================================================
--- trunk/org.rubypeople.rdt.debug.ui/src/org/rubypeople/rdt/internal/debug/ui/launcher/RubyApplicationShortcut.java 2007-05-07 20:26:12 UTC (rev 2442)
+++ trunk/org.rubypeople.rdt.debug.ui/src/org/rubypeople/rdt/internal/debug/ui/launcher/RubyApplicationShortcut.java 2007-05-08 14:08:08 UTC (rev 2443)
@@ -99,7 +99,7 @@
candidateConfigs = new ArrayList(configs.length);
for (int i = 0; i < configs.length; i++) {
ILaunchConfiguration config = configs[i];
- boolean projectsEqual = config.getAttribute(RubyLaunchConfigurationAttribute.PROJECT_NAME, "").equals(rubyFile.getProject().getName());
+ boolean projectsEqual = config.getAttribute(IRubyLaunchConfigurationConstants.ATTR_PROJECT_NAME, "").equals(rubyFile.getProject().getName());
if (projectsEqual) {
boolean projectRelativeFileNamesEqual = config.getAttribute(IRubyLaunchConfigurationConstants.ATTR_FILE_NAME, "").equals(rubyFile.getProjectRelativePath().toString());
if (projectRelativeFileNamesEqual) {
@@ -128,7 +128,7 @@
try {
ILaunchConfigurationType configType = getRubyLaunchConfigType();
ILaunchConfigurationWorkingCopy wc = configType.newInstance(null, getLaunchManager().generateUniqueLaunchConfigurationNameFrom(rubyFile.getName()));
- wc.setAttribute(RubyLaunchConfigurationAttribute.PROJECT_NAME, rubyFile.getProject().getName());
+ wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_PROJECT_NAME, rubyFile.getProject().getName());
wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_FILE_NAME, rubyFile.getProjectRelativePath().toString());
wc.setAttribute(RubyLaunchConfigurationAttribute.WORKING_DIRECTORY, RubyApplicationShortcut.getDefaultWorkingDirectory(rubyFile.getProject()));
wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_VM_INSTALL_NAME, RubyRuntime.getDefaultVMInstall().getName());
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-07 20:26:15
|
Revision: 2442
http://svn.sourceforge.net/rubyeclipse/?rev=2442&view=rev
Author: cawilliams
Date: 2007-05-07 13:26:12 -0700 (Mon, 07 May 2007)
Log Message:
-----------
upgrade to version from debug-commons-0.9.3
Modified Paths:
--------------
trunk/org.rubypeople.rdt.launching/ruby/classic-debug.rb
Modified: trunk/org.rubypeople.rdt.launching/ruby/classic-debug.rb
===================================================================
--- trunk/org.rubypeople.rdt.launching/ruby/classic-debug.rb 2007-05-07 14:29:24 UTC (rev 2441)
+++ trunk/org.rubypeople.rdt.launching/ruby/classic-debug.rb 2007-05-07 20:26:12 UTC (rev 2442)
@@ -20,11 +20,11 @@
def initialize
@printers = []
end
-
+
def addPrinter(printer)
@printers << printer
end
-
+
def method_missing(methodName, *args)
@printers.each { |printer|
printer.send(methodName, *args)
@@ -33,30 +33,30 @@
end
class XmlPrinter
-
+
def initialize(socket)
@socket = socket
end
-
+
def out(*params)
debugIntern(false, *params)
if @socket then
@socket.printf(*params)
- end
+ end
end
-
+
def printXml(s, *params)
- out(s, *params)
+ out(s, *params)
end
-
+
def printError(s, *params)
- out("<error>" + s + "</error>", *params)
+ out("<error>" + s + "</error>", *params)
end
-
+
def printVariable(name, binding, kind)
printVariableValue(name, eval(name, binding), kind)
end
-
+
def printVariableValue(name, value, kind)
if value == nil then
out("<variable name=\"%s\" kind=\"%s\"/>", CGI.escapeHTML(name), kind)
@@ -69,48 +69,48 @@
else
valueString = value.class().name + " (" + value.length.to_s + " element(s))"
end
- else
+ else
hasChildren = value.instance_variables.length > 0 || value.class.class_variables.length > 0
valueString = value.to_s
if valueString =~ /^\"/ then
- valueString.slice!(1..(valueString.length)-2)
- end
+ valueString.slice!(1..(valueString.length)-2)
+ end
end
out("<variable name=\"%s\" kind=\"%s\" value=\"%s\" type=\"%s\" hasChildren=\"%s\" objectId=\"%#+x\"/>", CGI.escapeHTML(name), kind, CGI.escapeHTML(valueString), value.class(), hasChildren, value.respond_to?(:object_id) ? value.object_id : value.id)
end
-
+
def printBreakpoint(n, debugFuncName, file, pos)
- out("<breakpoint file=\"%s\" line=\"%s\" threadId=\"%s\"/>", file, pos, DEBUGGER__.get_thread_num())
+ out("<breakpoint file=\"%s\" line=\"%s\" threadId=\"%s\"/>", file, pos, DEBUGGER__.get_thread_num())
end
-
+
def printException(file, pos, exception)
- out("<exception file=\"%s\" line=\"%s\" type=\"%s\" message=\"%s\" threadId=\"%s\"/>", file, pos, exception.class, CGI.escapeHTML(exception.to_s), DEBUGGER__.get_thread_num())
+ out("<exception file=\"%s\" line=\"%s\" type=\"%s\" message=\"%s\" threadId=\"%s\"/>", file, pos, exception.class, CGI.escapeHTML(exception.to_s), DEBUGGER__.get_thread_num())
end
-
+
def printStepEnd(file, line, framesCount)
- out("<suspended file=\"%s\" line=\"%s\" frames=\"%s\" threadId=\"%s\"/>", file, line, framesCount, DEBUGGER__.get_thread_num())
+ out("<suspended file=\"%s\" line=\"%s\" frames=\"%s\" threadId=\"%s\"/>", file, line, framesCount, DEBUGGER__.get_thread_num())
end
-
+
def printFrame(pos, n, file, line, id)
out("<frame no=\"%s\" file=\"%s\" line=\"%s\"/>", n, file, line)
end
-
- def printThread(num, thread)
+
+ def printThread(num, thread)
out("<thread id=\"%s\" status=\"%s\"/>", num, thread.status)
- end
-
+ end
+
def printLoadResult(file, exception=nil)
if exception then
- out("<loadResult file=\"%s\" exceptionType=\"%s\" exceptionMessage=\"%s\"/>", file, exception.class, CGI.escapeHTML(exception.to_s))
+ out("<loadResult file=\"%s\" exceptionType=\"%s\" exceptionMessage=\"%s\"/>", file, exception.class, CGI.escapeHTML(exception.to_s))
else
- out("<loadResult file=\"%s\" status=\"OK\"/>", file)
+ out("<loadResult file=\"%s\" status=\"OK\"/>", file)
end
end
-
+
def debug(*params)
debugIntern(true, *params)
end
-
+
def debugIntern(escape, *params)
if VERBOSE_DEBUGGER then
output = sprintf(*params)
@@ -140,7 +140,7 @@
SCRIPT_LINES__ = {} unless defined? SCRIPT_LINES__
class DEBUGGER__
-
+
# type: 0 - breakpoint, 1 - watchpoint
Breakpoint = Struct.new("Breakpoint", :valid, :type, :file, :pos)
@@ -148,16 +148,16 @@
def printXml(s)
# print XML only
end
-
+
def printVariable(name, binding, kind)
stdout.printf " %s => %s\n", name, eval(name, binding).inspect
end
-
+
def printBreakpoint(n, debugFuncName, file, pos)
stdout.printf "Breakpoint %d, %s at %s:%s\n", n, debugFuncName, file, pos
stdout.flush
end
-
+
def printFrame(pos, n, file, line, id)
if pos == n
stdout.printf "--> #%d %s:%s%s\n", n, file, line, id ? ":in `#{id.id2name}'":""
@@ -165,13 +165,13 @@
stdout.printf " #%d %s:%s%s\n", n, file, line, id ? ":in `#{id.id2name}'":""
end
end
-
+
def printException(file, line, exception)
stdout.printf "%s:%d: `%s' (%s)\n", file, line, exception, exception.class
stdout.flush
end
-
- def printThread(num, thread)
+
+ def printThread(num, thread)
if thread == Thread.current
stdout.print "+"
else
@@ -185,21 +185,21 @@
end
stdout.print "\n"
end
-
-
+
+
def printStepEnd(file, line, framesCount)
-
+
end
-
+
def debug(*params)
-
+
end
-
+
def stdout
DEBUGGER__.stdout
end
end
-
+
class Context
attr_reader :shouldResume
def initialize
@@ -218,61 +218,61 @@
@suspend_next = false
@shouldResume = false
end
-
+
def stop_next(n=1)
@stop_next = n
end
-
+
def set_suspend
@suspend_next = true
end
-
+
def clear_suspend
@suspend_next = false
end
-
+
def stopCurrentThread
@printer.debug("Suspending : %s", Thread.current)
- Thread.stop()
+ Thread.stop()
@printer.debug("Resumed : %s", Thread.current)
end
-
+
def trace?
@trace
end
-
+
def set_trace(arg)
@trace = arg
end
-
+
def stdout
if @socket then
@socket
- else
+ else
DEBUGGER__.stdout
end
end
-
+
def break_points
DEBUGGER__.break_points
end
-
+
def display
DEBUGGER__.display
end
-
+
def context(th)
DEBUGGER__.context(th)
end
-
+
def set_trace_all(arg)
DEBUGGER__.set_trace(arg)
end
-
+
def set_last_thread(th)
DEBUGGER__.set_last_thread(th)
end
-
+
def debug_eval_private(str, binding)
# evaluates str like "var.@instance_var.@instance_var"
# and "var.privateMethod"
@@ -289,14 +289,14 @@
@printer.debug("Evaluating (class_var): %s on %s", names[i], obj )
obj = obj.class.class_eval("#{names[i]}")
else
- @printer.debug("Evaluating (instance_var): %s on %s", names[i], obj )
+ @printer.debug("Evaluating (instance_var): %s on %s", names[i], obj )
obj = obj.instance_eval("#{names[i]}")
end
end
}
return obj
end
-
+
def debug_eval(str, binding, noPrivateInstanceVars = false)
begin
if noPrivateInstanceVars then
@@ -305,7 +305,7 @@
val = debug_eval_private(str, binding)
end
val
- rescue ScriptError, StandardError => error
+ rescue ScriptError, StandardError => error
if error.to_s =~ /private method .* called for/ then
return debug_eval(str, binding, true)
end
@@ -313,7 +313,7 @@
raise error
end
end
-
+
def debug_silent_eval(str, binding)
begin
val = eval(str, binding)
@@ -322,24 +322,24 @@
nil
end
end
-
+
def var_list(ary, binding, kind)
ary.sort!
@printer.printXml("<variables>")
for v in ary
- @printer.printVariable(v,binding, kind)
+ @printer.printVariable(v,binding, kind)
end
@printer.printXml("</variables>")
end
-
+
def printArrayElements(array)
- index = 0
+ index = 0
array.each { |e|
- @printer.printVariableValue('[' + index.to_s + ']', e, 'instance')
- index += 1
+ @printer.printVariableValue('[' + index.to_s + ']', e, 'instance')
+ index += 1
}
end
-
+
def printHashElements(hash)
hash.keys.each { | k |
if k.class.name == "String"
@@ -347,24 +347,24 @@
else
name = k.to_s
end
- @printer.printVariableValue(name, hash[k], 'instance')
+ @printer.printVariableValue(name, hash[k], 'instance')
}
end
-
-
- def getConstantsInClass(aClass)
+
+
+ def getConstantsInClass(aClass)
constants = aClass.constants() - Object.constants
return constants.delete_if { |c| ! aClass.const_defined? c }
end
-
-
+
+
def getBinding(pos)
# returns frame info of frame pos, if pos is within bound, nil otherwise
pos = @current_frame unless pos
pos = pos.to_i - 1
if pos < 0 then
@printer.debug("ERROR: illegal stack frame, using top frame.")
- pos = 0
+ pos = 0
end
if pos >= @frames.size then
@printer.debug("ERROR: given stack frame number %i too high.", pos + 1)
@@ -373,14 +373,14 @@
@printer.debug("Using frame %s (1-based) for evaluation of variable.", pos + 1)
return @frames[pos][0]
end
-
-
+
+
def debug_variable_info(input, binding)
-
+
case input
when /^\s*g(?:lobal)?$/
var_list(global_variables, binding, 'global')
-
+
when /^\s*l(?:ocal)?\s*(\d+)?$/
@printer.debug("Getting binding for frame #{$1}")
new_binding = getBinding($1)
@@ -390,17 +390,17 @@
begin
#@printer.debug("binding=%s", binding)
localVars = eval("local_variables", binding)
- # v 1.8.1 dies in eval @printer.debug("HERE")
+ # v 1.8.1 dies in eval @printer.debug("HERE")
if eval('self.to_s', binding) !~ /main/ then
localVars << "self"
end
var_list(localVars, binding, 'local')
rescue StandardError => bang
@printer.debug("Exception while evaluating local_variables: %s", bang)
- var_list([], binding, 'local')
- end
-
- when /^\s*i(?:nstance)?\s*(\d+)?\s+((?:[\\+-]0x)[\dabcdef]+)?/
+ var_list([], binding, 'local')
+ end
+
+ when /^\s*i(?:nstance)?\s*(\d+)?\s+((?:[\\+-]0x)[\dabcdef]+)?/
new_binding = getBinding($1)
if new_binding then
binding = new_binding
@@ -412,7 +412,7 @@
if (!obj) then
@printer.debug("unknown object id : %s", $2)
end
- else
+ else
obj = debug_eval($', binding)
end
if (obj.class.name == "Array") then
@@ -422,9 +422,9 @@
if (obj.class.name == "Hash") then
printHashElements(obj)
return
- end
+ end
@printer.debug("%s", obj)
- instanceBinding = obj.instance_eval{binding()}
+ instanceBinding = obj.instance_eval{binding()}
obj.instance_variables.each {
| instanceVar |
@printer.printVariable(instanceVar, instanceBinding, 'instance')
@@ -441,37 +441,35 @@
@printer.printVariable(constant, classBinding, 'constant')
}
rescue StandardError => error
- @printer.debug("%s", error)
+ @printer.debug("%s", error)
ensure
- @printer.printXml("</variables>")
+ @printer.printXml("</variables>")
end
-
-
- when /^\s*inspect\s*(\d+)?\s+/
+
+
+ when /^\s*inspect\s*(\d+)?\s+/
new_binding = getBinding($1)
if new_binding then
binding = new_binding
end
- begin
+ begin
obj = debug_eval($', binding, true)
rescue ScriptError, StandardError => error
- @printer.printXml("<processingException type=\"%s\" message=\"%s\"/>", error.class, error.message)
- return
- end
+ @printer.printXml("<processingException type=\"%s\" message=\"%s\"/>", error.class, CGI.escapeHTML(error.message))
+ return
+ end
@printer.debug("%s", obj)
@printer.printXml("<variables>")
- @printer.printVariableValue($', obj, "local")
+ @printer.printVariableValue($', obj, "local")
@printer.printXml("</variables>")
-
-
end
end
-
+
def debug_method_info(input, binding)
case input
when /^i(:?nstance)?\s+/
obj = debug_eval($', binding) # correct highlighting since RDT editor does not recognize $'
-
+
len = 0
for v in obj.methods.sort
len += v.size + 1
@@ -482,7 +480,7 @@
stdout.print v, " "
end
stdout.print "\n"
-
+
else
obj = debug_eval(input, binding)
unless obj.kind_of? Module
@@ -501,7 +499,7 @@
end
end
end
-
+
def thnum(thread=Thread.current)
num = DEBUGGER__.instance_eval{@thread_list[thread]}
unless num
@@ -510,23 +508,23 @@
end
num
end
-
+
def processInput(input)
binding, file, line, id = @frames[0]
- input.split(";").each {
+ input.split(";").each {
| singleCommand |
readUserInput(binding, file, line, singleCommand.strip)
}
end
-
+
def readUserInput(binding, binding_file, binding_line, input)
-
+
@printer.debug("Processing #{input}, binding=%s", binding)
- @shouldResume = false
- frame_pos = 0
+ @shouldResume = false
+ frame_pos = 0
previous_line = nil
display_expressions(binding)
-
+
case input
when /^\s*tr(?:ace)?(?:\s+(on|off))?(?:\s+(all))?$/
if defined?( $2 )
@@ -547,7 +545,7 @@
else
stdout.print "Trace off.\n"
end
-
+
when /^\s*b(?:reak)?\s+(?:(.+):)?([^.:]+)$/
pos = $2
file = File.basename($1)
@@ -561,28 +559,28 @@
id = DEBUGGER__.next_breakpoint_id
break_points[id] = Breakpoint.new(true, 0, file, pos)
@printer.printXml("<breakpointAdded no=\"%d\" location=\"%s:%s\"/>", id, file, pos)
-
+
when /^\s*delete\s+(\d+)$/
breakpoint_id = $1.to_i
if break_points.delete(breakpoint_id)
@printer.printXml("<breakpointDeleted no=\"%d\"/>", breakpoint_id)
- else
+ else
@printer.printXml("<error>No breakpoint with id: %d. Currently following breakpoints defined: %s</error>",
- breakpoint_id, breakpoints.keys.join(', '))
+ breakpoint_id, break_points.keys.join(', '))
end
-
+
# when /^\s*wat(?:ch)?\s+(.+)$/
# exp = $1
# break_points.push [true, 1, exp]
# stdout.printf "Set watchpoint %d\n", break_points.size, exp
-
+
# when /^\s*b(?:reak)?$/
# if break_points.find{|b| b[1] == 0}
# n = 1
# stdout.print "Breakpoints:\n"
# for b in break_points
# if b[0] and b[1] == 0
- # stdout.printf " %d %s:%s\n", n, b[2], b[3]
+ # stdout.printf " %d %s:%s\n", n, b[2], b[3]
# end
# n += 1
# end
@@ -603,7 +601,7 @@
# else
# stdout.print "\n"
# end
-
+
# when /^\s*disp(?:lay)?\s+(.+)$/
# exp = $1
# display.push [true, exp]
@@ -630,10 +628,10 @@
# stdout.printf "Display expression %d is not defined\n", pos
# end
# end
-
+
when /^\s*c(?:ont)?$/
@shouldResume = true
-
+
when /^\s*s(?:tep)?(?:\s+(\d+))?$/
if $1
lev = $1.to_i
@@ -642,7 +640,7 @@
end
@stop_next = lev
@shouldResume = true
-
+
when /^\s*n(?:ext)?(?:\s+(\d+))?$/
if $1
lev = $1.to_i
@@ -652,10 +650,10 @@
@stop_next = lev
@no_step = @frames.size - frame_pos
@shouldResume = true
-
+
when /^\s*w(?:here)?$/, /^\s*f(?:rame)?$/
display_frames(frame_pos)
-
+
# when /^\s*fin(?:ish)?$/
# if frame_pos == @frames.size
# stdout.print "\"finish\" not meaningful in the outermost frame.\n"
@@ -667,10 +665,10 @@
when /^\s*f(?:rame)?\s+(\d+)\s*$/
@printer.debug("Setting frame to #{$1}")
@current_frame = $1.to_i
-
-
+
+
when /^\s*cat(?:ch)?(?:\s+(.+))?$/
- # $1 can also be nil
+ # $1 can also be nil
@catch = $1
@catch = nil if @catch == 'off'
if @catch then
@@ -678,35 +676,35 @@
else
@printer.debug("Catchpoints disabled")
end
-
-
+
+
when /^\s*v(?:ar)?\s+/
debug_variable_info($', binding)
-
+
when /^\s*m(?:ethod)?\s+/
debug_method_info($', binding)
-
+
when /^\s*th(?:read)?\s+/
DEBUGGER__.debug_thread_info($', binding)
-
+
when /^\s*p\s+/
stdout.printf "%s\n", debug_eval($', binding).inspect
-
+
when /^\s*load\s+/
@printer.debug("loading file: %s", $')
begin
- load $'
+ load $'
@printer.printLoadResult($')
rescue Exception => error
@printer.printLoadResult($', error)
end
-
+
else
@printer.debug("Unknown input : %s", input)
end
-
+
end
-
+
def display_expressions(binding)
n = 1
for d in display
@@ -717,11 +715,11 @@
n += 1
end
end
-
+
def display_expression(exp, binding)
stdout.printf "%s = %s\n", exp, debug_silent_eval(exp, binding).to_s
end
-
+
def frame_set_pos(binding, file, line, id)
if @frames[0] then
@frames[0][0] = binding
@@ -732,20 +730,20 @@
@frames[0] = [binding, file, line, id]
end
end
-
+
def display_frames(pos)
pos += 1
n = 0
at = @frames
- @printer.printXml("<frames>")
+ @printer.printXml("<frames>")
for bind, file, line, id in at
n += 1
break unless bind
@printer.printFrame(pos, n, file, line, id)
end
- @printer.printXml("</frames>")
+ @printer.printXml("</frames>")
end
-
+
def debug_funcname(id)
if id.nil?
"toplevel"
@@ -753,20 +751,20 @@
id.id2name
end
end
-
+
def debug_command(file, line, id, binding)
@printer.debug("debug_command, @stop_next=%s, @frames.size=%s", @stop_next, @frames.size)
if @stop_next == 0 && @frames.size > 0 then
- # write suspended only if the suspension was originated by stepping and not before the start
+ # write suspended only if the suspension was originated by stepping and not before the start
# of the program
@printer.printStepEnd(file, line, @frames.size)
end
set_last_thread(Thread.current)
-
- #readUserInput(binding, file, line )
+
+ #readUserInput(binding, file, line )
#Thread.stop
end
-
+
def check_break_points(file, pos, binding, id)
return false if break_points.empty?
file = File.basename(file)
@@ -789,9 +787,9 @@
end
return false
end
-
+
def excn_handle(file, line, id, binding)
-
+
if $!.class <= SystemExit
@printer.debug( "SystemExit at %s:%d: `%s' (%s)\n", file, line, $!, $!.class )
set_trace_func nil
@@ -804,53 +802,53 @@
stopCurrentThread
@frames[0] = [binding, file, line, id]
debug_command(file, line, id, binding)
- end
-
+ end
+
end
-
+
def trace_func(event, file, line, id, binding, klass)
Tracer.trace_func(event, file, line, id, binding, klass) if trace?
-
+
@file = file
@line = line
case event
- when 'line'
- DEBUGGER__.printer().debug("trace line, file=%s, line=%s, stop_next=%d, binding=%s", file, line, @stop_next, binding)
+ when 'line'
+ DEBUGGER__.printer().debug("trace line, file=%s, line=%s, stop_next=%d, binding=%s", file, line, @stop_next, binding)
frame_set_pos(binding, file, line, id)
if !@no_step or @frames.size == @no_step
@stop_next -= 1
@stop_next = -1 if @stop_next < 0
elsif @frames.size < @no_step
- @stop_next = 0 # break here before leaving...
+ @stop_next = 0 # break here before leaving...
else
# nothing to do. skipped
end
- if @stop_next == 0 or check_break_points(file, line, binding, id)
- @no_step = nil
- debug_command(file, line, id, binding)
- stopCurrentThread
+ if @stop_next == 0 or check_break_points(file, line, binding, id)
+ @no_step = nil
+ debug_command(file, line, id, binding)
+ stopCurrentThread
end
-
+
when 'call'
DEBUGGER__.printer().debug("trace call, file=%s, line=%s, method=%s", file, line, id.id2name)
@frames.unshift [binding, file, line, id]
if check_break_points(file, id.id2name, binding, id) or
check_break_points(klass.to_s, id.id2name, binding, id) then
- stopCurrentThread
+ stopCurrentThread
debug_command(file, line, id, binding)
end
-
+
when 'c-call'
if @frames[0] then
@frames[0][1] = file
@frames[0][2] = line
else
- @frames[0] = [binding, file, line, id]
+ @frames[0] = [binding, file, line, id]
end
-
+
when 'class'
@frames.unshift [binding, file, line, id]
-
+
when 'return', 'end'
DEBUGGER__.printer().debug("trace return and end, file=%s, line=%s", file, line)
if @frames.size == @finish_pos
@@ -858,19 +856,19 @@
@finish_pos = 0
end
@frames.shift
-
+
when 'end'
DEBUGGER__.printer().debug("trace end, file=%s, line=%s", file, line)
@frames.shift
-
- when 'raise'
+
+ when 'raise'
excn_handle(file, line, id, binding)
-
+
end
@last_file = file
end
end
-
+
trap("INT") { DEBUGGER__.interrupt }
@last_thread = Thread::main
@max_thread = 1
@@ -880,28 +878,28 @@
@display = []
@waiting = []
@stdout = STDOUT
-
+
class << DEBUGGER__
def stdout
@stdout
end
-
+
def stdout=(s)
@stdout = s
end
-
+
def display
@display
end
-
+
def break_points
@break_points
end
-
+
def waiting
@waiting
end
-
+
def set_trace( arg )
Thread.critical = true
make_thread_list
@@ -910,11 +908,11 @@
end
Thread.critical = false
end
-
+
def set_last_thread(th)
@last_thread = th
end
-
+
def suspend
printer.debug("Suspending all")
Thread.critical = true
@@ -927,7 +925,7 @@
# Schedule other threads to suspend as soon as possible.
Thread.pass
end
-
+
def resume
Thread.critical = true
make_thread_list
@@ -943,7 +941,7 @@
# Schedule other threads to restart as soon as possible.
Thread.pass
end
-
+
def context(thread=Thread.current)
c = thread[:__debugger_data__]
unless c
@@ -951,19 +949,19 @@
end
c
end
-
+
def findThread(context)
for thread in Thread::list
if context == thread[:__debugger_data__]
return thread
end
end
- end
-
+ end
+
def interrupt
context(@last_thread).stop_next
end
-
+
def get_thread(num)
th = @thread_list.index(num)
unless th
@@ -971,25 +969,25 @@
end
th
end
-
+
def get_thread_num(thread=Thread.current)
make_thread_list
@thread_list[thread]
end
-
- def print_thread(thread)
+
+ def print_thread(thread)
num = @thread_list[thread]
- printer.printThread(num, thread)
+ printer.printThread(num, thread)
end
-
+
def thread_list_all
- printer.printXml("<threads>")
+ printer.printXml("<threads>")
for num in @thread_list.values.sort
printer.printThread(num, get_thread(num))
end
- printer.printXml("</threads>")
+ printer.printXml("</threads>")
end
-
+
def make_thread_list
hash = {}
for th in Thread::list
@@ -1003,17 +1001,17 @@
end
@thread_list = hash
end
-
+
def debug_thread_info(input, binding)
case input
when /^l(?:ist)?/
make_thread_list
thread_list_all
-
+
when /^c(?:ur(?:rent)?)?$/
make_thread_list
print_thread()
-
+
when /^(?:sw(?:itch)?\s+)?(\d+)/
make_thread_list
th = get_thread($1.to_i)
@@ -1025,7 +1023,7 @@
th.run
return
end
-
+
when /^stop\s+(\d+)/
make_thread_list
th = get_thread($1.to_i)
@@ -1035,9 +1033,9 @@
@stdout.print "Already stopped.\n"
else
print_thread(th)
- context(th).suspend
+ context(th).suspend
end
-
+
when /^resume\s+(\d+)/
make_thread_list
th = get_thread($1.to_i)
@@ -1049,61 +1047,61 @@
print_thread(th)
th.run
end
-
+
when /^change\s+(\d+)/
make_thread_list
th = get_thread($1.to_i)
print_thread(th)
- return context(th)
- end
+ return context(th)
+ end
end
def next_breakpoint_id
@max_breakpoint_id += 1
+ end
end
- end
-
+
@@socket = nil
@@printer = nil
@@inputReader = nil
@@isStarted = false
-
+
def DEBUGGER__.printer
- @@printer
+ @@printer
end
-
+
def DEBUGGER__.socket
- @@socket
+ @@socket
end
-
+
def DEBUGGER__.isStarted
- @@isStarted
+ @@isStarted
end
-
+
def DEBUGGER__.setStarted
- @@isStarted = true
+ @@isStarted = true
end
-
-
+
+
def DEBUGGER__.inputReader
- @@inputReader
+ @@inputReader
end
-
- def DEBUGGER__.traceOn()
+
+ def DEBUGGER__.traceOn()
set_trace_func @@traceProc
Thread.critical = false
end
-
- def DEBUGGER__.traceOff()
+
+ def DEBUGGER__.traceOff()
Thread.critical = true
set_trace_func nil
end
-
+
def DEBUGGER__.readCommandLoop()
sleep(1.0) # workaround for large files with ruby 1.6.8, otherwise parse exceptions
loop do
sleep(0.1)
- newData, x, y = IO.select( [socket], nil, nil, 0.001 )
+ newData, x, y = IO.select( [socket], nil, nil, 0.001 )
next unless newData
DEBUGGER__.traceOff()
input = newData[0].gets.chomp!
@@ -1111,10 +1109,10 @@
@@printer.debug("READ #{input}")
if !DEBUGGER__.isStarted && input == "cont" then
DEBUGGER__.setStarted()
- DEBUGGER__.traceOn()
+ DEBUGGER__.traceOn()
next
end
- input =~ /^th\s+(\d+)\s*;\s*/
+ input =~ /^th\s+(\d+)\s*;\s*/
if $~ then
@@printer.debug("Using context for thread: %s", $1.to_i)
context = DEBUGGER__.context(get_thread($1.to_i))
@@ -1122,17 +1120,17 @@
else
@@printer.debug("Using context for main thread : %s", Thread.main)
context = DEBUGGER__.context(Thread.main)
- end
+ end
context.processInput(input)
if context.shouldResume then
- threadToResume = DEBUGGER__.findThread(context)
+ threadToResume = DEBUGGER__.findThread(context)
end
- DEBUGGER__.traceOn()
+ DEBUGGER__.traceOn()
next unless threadToResume
threadToResume.run()
end
end
-
+
# use 127.0.0.1 instead of localhost because OSX 10.4
server = TCPServer.new('127.0.0.1', REMOTE_DEBUG_PORT)
puts "ruby #{RUBY_VERSION} debugger listens on port #{REMOTE_DEBUG_PORT}"
@@ -1141,29 +1139,29 @@
@@socket = server.accept
@@printer = XmlPrinter.new(@@socket)
@@printer.debug("Socket connection established.")
-
+
@@printer.debug("Starting command reader loop.")
@@inputReader = Thread.new {
begin
DEBUGGER__.readCommandLoop()
- rescue ScriptError, StandardError => error
+ rescue ScriptError, StandardError => error
puts error
end
}
-
+
@@traceProc = proc { |event, file, line, id, binding, klass, *rest|
-
- #@@printer.debug("trace %s, %s:%s", event, file, line)
+
+ #@@printer.debug("trace %s, %s:%s", event, file, line)
next if Thread.current == DEBUGGER__.inputReader
next if file =~ /classic-debug.rb$/
- #@@printer.debug("trace %s, %s:%s", event, file, line)
+ #@@printer.debug("trace %s, %s:%s", event, file, line)
while (!DEBUGGER__.isStarted) do
@@printer.debug("Debugging not yet started.")
sleep(1)
end
- DEBUGGER__.context.trace_func event, file, line, id, binding, klass
+ DEBUGGER__.context.trace_func event, file, line, id, binding, klass
}
-
+
@@printer.debug("Setting trace func: %s", @@traceProc)
set_trace_func @@traceProc
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-07 14:29:27
|
Revision: 2441
http://svn.sourceforge.net/rubyeclipse/?rev=2441&view=rev
Author: cawilliams
Date: 2007-05-07 07:29:24 -0700 (Mon, 07 May 2007)
Log Message:
-----------
make some changes to make it easier for RadRails to subclass this and gain more behavior for creating test launch configurations for it's test all/test units/test functionals buttons which invoke files outside the workspace.
Modified Paths:
--------------
trunk/org.rubypeople.rdt.testunit/src/org/rubypeople/rdt/testunit/launcher/TestUnitLaunchShortcut.java
Modified: trunk/org.rubypeople.rdt.testunit/src/org/rubypeople/rdt/testunit/launcher/TestUnitLaunchShortcut.java
===================================================================
--- trunk/org.rubypeople.rdt.testunit/src/org/rubypeople/rdt/testunit/launcher/TestUnitLaunchShortcut.java 2007-05-07 13:31:50 UTC (rev 2440)
+++ trunk/org.rubypeople.rdt.testunit/src/org/rubypeople/rdt/testunit/launcher/TestUnitLaunchShortcut.java 2007-05-07 14:29:24 UTC (rev 2441)
@@ -126,6 +126,10 @@
}
protected ILaunchConfiguration createConfiguration(IFile rubyFile, String container, String testName) {
+ return createConfiguration(rubyFile.getLocation().toOSString(), container, rubyFile.getProject(), testName);
+ }
+
+ protected ILaunchConfiguration createConfiguration(String rubyFile, String container, IProject project, String testName) {
if (RubyRuntime.getDefaultVMInstall() == null) {
showNoInterpreterDialog();
return null;
@@ -134,10 +138,10 @@
ILaunchConfiguration config = null;
try {
ILaunchConfigurationType configType = getRubyLaunchConfigType();
- ILaunchConfigurationWorkingCopy wc = configType.newInstance(null, getLaunchManager().generateUniqueLaunchConfigurationNameFrom(rubyFile.getName()));
- wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_PROJECT_NAME, rubyFile.getProject().getName());
+ ILaunchConfigurationWorkingCopy wc = configType.newInstance(null, getLaunchManager().generateUniqueLaunchConfigurationNameFrom(rubyFile));
+ wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_PROJECT_NAME, project.getName());
wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_FILE_NAME, TestUnitLaunchConfigurationDelegate.getTestRunnerPath());
- wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_WORKING_DIRECTORY, TestUnitLaunchShortcut.getDefaultWorkingDirectory(rubyFile.getProject()));
+ wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_WORKING_DIRECTORY, TestUnitLaunchShortcut.getDefaultWorkingDirectory(project));
wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_VM_INSTALL_NAME, RubyRuntime.getDefaultVMInstall().getName());
wc.setAttribute(IRubyLaunchConfigurationConstants.ATTR_VM_INSTALL_TYPE, RubyRuntime.getDefaultVMInstall().getVMInstallType().getId());
wc.setAttribute(TestUnitLaunchConfigurationDelegate.LAUNCH_CONTAINER_ATTR, container);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <tc...@us...> - 2007-05-07 13:31:51
|
Revision: 2440
http://svn.sourceforge.net/rubyeclipse/?rev=2440&view=rev
Author: tcorbat
Date: 2007-05-07 06:31:50 -0700 (Mon, 07 May 2007)
Log Message:
-----------
Tests for comment handling in ConvertTempToField
Added Paths:
-----------
trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_properties
trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_result
trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_source
trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_properties
trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_result
trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_source
Added: trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_properties
===================================================================
--- trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_properties (rev 0)
+++ trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_properties 2007-05-07 13:31:50 UTC (rev 2440)
@@ -0,0 +1,4 @@
+newName=i
+isClassField=false
+initPlace=TempToFieldConverter.INIT_IN_METHOD
+cursorPosition=64
\ No newline at end of file
Added: trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_result
===================================================================
--- trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_result (rev 0)
+++ trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_result 2007-05-07 13:31:50 UTC (rev 2440)
@@ -0,0 +1,8 @@
+class A
+ def m (arg1, arg2)
+ #comment before assignment
+ @i = 5 #comment behind assignment
+
+ @i = arg1 + arg2 #comment after temp
+ end
+end
\ No newline at end of file
Added: trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_source
===================================================================
--- trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_source (rev 0)
+++ trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_1.test_source 2007-05-07 13:31:50 UTC (rev 2440)
@@ -0,0 +1,8 @@
+class A
+ def m (arg1, arg2)
+ #comment before assignment
+ i = 5 #comment behind assignment
+
+ i = arg1 + arg2 #comment after temp
+ end
+end
\ No newline at end of file
Added: trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_properties
===================================================================
--- trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_properties (rev 0)
+++ trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_properties 2007-05-07 13:31:50 UTC (rev 2440)
@@ -0,0 +1,4 @@
+newName=i
+isClassField=false
+initPlace=TempToFieldConverter.INIT_IN_CONSTRUCTOR
+cursorPosition=142
\ No newline at end of file
Added: trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_result
===================================================================
--- trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_result (rev 0)
+++ trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_result 2007-05-07 13:31:50 UTC (rev 2440)
@@ -0,0 +1,13 @@
+class A
+
+ def initialize
+
+ #comment before assignment
+ @i = 5 #comment after assignment
+
+ end
+
+ def m (arg1, arg2)
+ @i = arg1 + arg2 #comment behind i
+ end
+end
Added: trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_source
===================================================================
--- trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_source (rev 0)
+++ trunk/org.rubypeople.rdt.refactoring.tests/resources/core/convertlocaltofield/temp_to_field_test_comment_2.test_source 2007-05-07 13:31:50 UTC (rev 2440)
@@ -0,0 +1,7 @@
+class A
+ def m (arg1, arg2)
+ #comment before assignment
+ i = 5 #comment after assignment
+ i = arg1 + arg2 #comment behind i
+ end
+end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <tc...@us...> - 2007-05-07 13:15:03
|
Revision: 2439
http://svn.sourceforge.net/rubyeclipse/?rev=2439&view=rev
Author: tcorbat
Date: 2007-05-07 06:14:59 -0700 (Mon, 07 May 2007)
Log Message:
-----------
Comment handling improved in ConvertTempToField refactoring
Modified Paths:
--------------
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/InitInConstructorEditProvider.java
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldConverter.java
trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldEditProvider.java
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/InitInConstructorEditProvider.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/InitInConstructorEditProvider.java 2007-05-05 10:50:49 UTC (rev 2438)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/InitInConstructorEditProvider.java 2007-05-07 13:14:59 UTC (rev 2439)
@@ -50,7 +50,7 @@
public InitInConstructorEditProvider(LocalNodeWrapper originalNode, LocalToFieldConfig config) {
super(true);
- LocalToFieldEditProvider conversion = new LocalToFieldEditProvider(originalNode, config.getNewName(), config.isClassField());
+ LocalToFieldEditProvider conversion = new LocalToFieldEditProvider(originalNode, config.getNewName(), config.isClassField(), true);
insertNode = conversion.getEditNode(0, null);
enclosingClassNode = config.getEnclosingClassNode();
}
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldConverter.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldConverter.java 2007-05-05 10:50:49 UTC (rev 2438)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldConverter.java 2007-05-07 13:14:59 UTC (rev 2439)
@@ -116,7 +116,8 @@
LocalNodeWrapper firstLocalNode = localNodes.toArray(new LocalNodeWrapper[localNodes.size()])[0];
for (LocalNodeWrapper aktLocalNode : localNodes) {
- LocalToFieldEditProvider conversion = new LocalToFieldEditProvider(aktLocalNode, config.getNewName(), config.isClassField());
+ boolean initInConstructor = (initPlace == INIT_IN_CONSTRUCTOR);
+ LocalToFieldEditProvider conversion = new LocalToFieldEditProvider(aktLocalNode, config.getNewName(), config.isClassField(),initInConstructor);
editProviderMap.put(aktLocalNode, conversion);
}
if (initPlace == INIT_IN_CONSTRUCTOR) {
Modified: trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldEditProvider.java
===================================================================
--- trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldEditProvider.java 2007-05-05 10:50:49 UTC (rev 2438)
+++ trunk/org.rubypeople.rdt.refactoring/src/org/rubypeople/rdt/refactoring/core/convertlocaltofield/LocalToFieldEditProvider.java 2007-05-07 13:14:59 UTC (rev 2439)
@@ -32,6 +32,7 @@
import java.util.ArrayList;
import java.util.Collection;
+import java.util.List;
import org.jruby.ast.Node;
import org.rubypeople.rdt.refactoring.editprovider.ReplaceEditProvider;
@@ -40,10 +41,12 @@
public class LocalToFieldEditProvider extends ReplaceEditProvider {
private LocalNodeWrapper localNode;
+ private boolean initInConstructor;
- public LocalToFieldEditProvider(LocalNodeWrapper localNode, String newName, boolean isClassField) {
+ public LocalToFieldEditProvider(LocalNodeWrapper localNode, String newName, boolean isClassField, boolean initInConstructor) {
super(false);
this.localNode = localNode;
+ this.initInConstructor = initInConstructor;
newName = ((isClassField) ? "@@" : "@") + newName; //$NON-NLS-1$ //$NON-NLS-2$
Collection<LocalNodeWrapper> allLocalNodes = new ArrayList<LocalNodeWrapper>();
allLocalNodes.add(localNode);
@@ -66,16 +69,36 @@
@Override
protected int getOffsetLength() {
- return localNode.getWrappedNode().getPosition().getEndOffset() - getOffset(null);
+ if(initInConstructor)
+ return localNode.getWrappedNode().getPositionIncludingComments().getEndOffset() - getOffset(null);
+ else
+ return localNode.getWrappedNode().getPosition().getEndOffset() - getOffset(null);
}
@Override
protected Node getEditNode(int offset, String document) {
- return localNode.getWrappedNode();
+ if(initInConstructor)
+ return localNode.getWrappedNode();
+ else
+ return stripComments(localNode.getWrappedNode());
}
+ private Node stripComments(Node wrappedNode) {
+
+ wrappedNode.getComments().clear();
+ List childs = wrappedNode.childNodes();
+ for(int i = 0; i < childs.size(); i++){
+ if(childs.get(i) instanceof Node)
+ stripComments((Node)childs.get(i));
+ }
+ return wrappedNode;
+ }
+
@Override
protected int getOffset(String document) {
- return localNode.getWrappedNode().getPosition().getStartOffset();
+ if(initInConstructor)
+ return localNode.getWrappedNode().getPositionIncludingComments().getStartOffset();
+ else
+ return localNode.getWrappedNode().getPosition().getStartOffset();
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <mba...@us...> - 2007-05-05 10:50:50
|
Revision: 2438
http://svn.sourceforge.net/rubyeclipse/?rev=2438&view=rev
Author: mbarchfe
Date: 2007-05-05 03:50:49 -0700 (Sat, 05 May 2007)
Log Message:
-----------
added classes from src to classpath
Modified Paths:
--------------
trunk/com.aptana.rdt/META-INF/MANIFEST.MF
Modified: trunk/com.aptana.rdt/META-INF/MANIFEST.MF
===================================================================
--- trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-04 15:44:16 UTC (rev 2437)
+++ trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-05 10:50:49 UTC (rev 2438)
@@ -3,7 +3,8 @@
Bundle-Name: Aptana RDT Extensions
Bundle-SymbolicName: com.aptana.rdt;singleton:=true
Bundle-Version: 0.0.0
-Bundle-ClassPath: lib/sourcetaplm.jar
+Bundle-ClassPath: lib/sourcetaplm.jar,
+ .
Bundle-Activator: com.aptana.rdt.AptanaRDTPlugin
Eclipse-LazyStart: true
Bundle-Vendor: Aptana, Inc.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-04 15:44:17
|
Revision: 2437
http://svn.sourceforge.net/rubyeclipse/?rev=2437&view=rev
Author: cawilliams
Date: 2007-05-04 08:44:16 -0700 (Fri, 04 May 2007)
Log Message:
-----------
add a bunch of dependencies
Modified Paths:
--------------
trunk/org.rubypeople.rdt-feature/feature.xml
trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml
Modified: trunk/org.rubypeople.rdt-feature/feature.xml
===================================================================
--- trunk/org.rubypeople.rdt-feature/feature.xml 2007-05-04 15:43:22 UTC (rev 2436)
+++ trunk/org.rubypeople.rdt-feature/feature.xml 2007-05-04 15:44:16 UTC (rev 2437)
@@ -252,23 +252,32 @@
version="0.0.0"/>
<requires>
+ <import plugin="org.eclipse.ui"/>
+ <import plugin="org.eclipse.core.runtime"/>
<import plugin="org.eclipse.core.resources"/>
- <import plugin="org.eclipse.debug.core"/>
- <import plugin="org.eclipse.core.runtime"/>
- <import plugin="org.eclipse.ui"/>
+ <import plugin="org.eclipse.ui.ide"/>
+ <import plugin="org.eclipse.ui.views"/>
+ <import plugin="org.eclipse.jface.text"/>
+ <import plugin="org.eclipse.ui.workbench.texteditor"/>
+ <import plugin="org.eclipse.ui.editors"/>
+ <import plugin="org.eclipse.ui.console"/>
<import plugin="org.eclipse.debug.ui"/>
<import plugin="org.eclipse.ui.workbench"/>
- <import plugin="org.eclipse.ui.workbench.texteditor"/>
- <import plugin="org.eclipse.jface.text"/>
- <import plugin="org.eclipse.ui.editors"/>
- <import plugin="org.eclipse.ui.ide"/>
+ <import plugin="org.eclipse.ui.forms"/>
+ <import plugin="org.eclipse.core.expressions"/>
<import plugin="org.eclipse.ui.cheatsheets"/>
- <import plugin="org.eclipse.ui.console"/>
+ <import plugin="org.eclipse.debug.core"/>
<import plugin="org.eclipse.team.core"/>
- <import plugin="org.eclipse.ui.views"/>
- <import plugin="org.eclipse.core.expressions"/>
- <import plugin="org.eclipse.ui.forms"/>
<import plugin="org.eclipse.ui.intro"/>
+ <import plugin="org.eclipse.search"/>
+ <import plugin="org.eclipse.compare"/>
+ <import plugin="org.eclipse.core.filesystem"/>
+ <import plugin="org.eclipse.ltk.core.refactoring"/>
+ <import plugin="com.ibm.icu"/>
+ <import plugin="org.eclipse.jface"/>
+ <import plugin="org.eclipse.text"/>
+ <import plugin="org.eclipse.core.variables"/>
+ <import plugin="org.eclipse.ltk.ui.refactoring"/>
</requires>
<plugin
Modified: trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml
===================================================================
--- trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml 2007-05-04 15:43:22 UTC (rev 2436)
+++ trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml 2007-05-04 15:44:16 UTC (rev 2437)
@@ -26,17 +26,24 @@
<import plugin="org.eclipse.debug.core"/>
<import plugin="org.junit"/>
<import plugin="org.rubypeople.rdt.core"/>
+ <import plugin="org.eclipse.jface.text"/>
<import plugin="org.rubypeople.rdt.debug.core"/>
<import plugin="org.kxml2"/>
+ <import plugin="org.rubypeople.rdt.launching"/>
<import plugin="org.eclipse.ui.ide"/>
<import plugin="org.eclipse.ui.views"/>
- <import plugin="org.eclipse.jface.text"/>
<import plugin="org.eclipse.ui.workbench.texteditor"/>
<import plugin="org.eclipse.ui.editors"/>
<import plugin="org.rubypeople.rdt.debug.ui"/>
- <import plugin="org.rubypeople.rdt.launching"/>
<import plugin="org.rubypeople.rdt.ui"/>
<import plugin="org.eclipse.debug.ui"/>
+ <import plugin="org.jruby"/>
+ <import plugin="org.eclipse.core.runtime"/>
+ <import plugin="org.eclipse.ui.console"/>
+ <import plugin="org.eclipse.search"/>
+ <import plugin="org.rubypeople.rdt.refactoring"/>
+ <import plugin="org.eclipse.text"/>
+ <import plugin="com.aptana.rdt"/>
</requires>
<plugin
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-04 15:43:23
|
Revision: 2436
http://svn.sourceforge.net/rubyeclipse/?rev=2436&view=rev
Author: cawilliams
Date: 2007-05-04 08:43:22 -0700 (Fri, 04 May 2007)
Log Message:
-----------
add a bunch of dependencies: org.jruby, org.eclipse.core.runtime, org.eclipse.ui.console, org.eclipse.search, org.rubypeople.rdt.refactoring, org.eclipse.text, com.aptana.rdt
Modified Paths:
--------------
trunk/org.rubypeople.rdt-test-feature/feature.xml
Modified: trunk/org.rubypeople.rdt-test-feature/feature.xml
===================================================================
--- trunk/org.rubypeople.rdt-test-feature/feature.xml 2007-05-04 14:38:49 UTC (rev 2435)
+++ trunk/org.rubypeople.rdt-test-feature/feature.xml 2007-05-04 15:43:22 UTC (rev 2436)
@@ -26,17 +26,24 @@
<import plugin="org.eclipse.debug.core"/>
<import plugin="org.junit"/>
<import plugin="org.rubypeople.rdt.core"/>
+ <import plugin="org.eclipse.jface.text"/>
<import plugin="org.rubypeople.rdt.debug.core"/>
<import plugin="org.kxml2"/>
+ <import plugin="org.rubypeople.rdt.launching"/>
<import plugin="org.eclipse.ui.ide"/>
<import plugin="org.eclipse.ui.views"/>
- <import plugin="org.eclipse.jface.text"/>
<import plugin="org.eclipse.ui.workbench.texteditor"/>
<import plugin="org.eclipse.ui.editors"/>
<import plugin="org.rubypeople.rdt.debug.ui"/>
- <import plugin="org.rubypeople.rdt.launching"/>
<import plugin="org.rubypeople.rdt.ui"/>
<import plugin="org.eclipse.debug.ui"/>
+ <import plugin="org.jruby"/>
+ <import plugin="org.eclipse.core.runtime"/>
+ <import plugin="org.eclipse.ui.console"/>
+ <import plugin="org.eclipse.search"/>
+ <import plugin="org.rubypeople.rdt.refactoring"/>
+ <import plugin="org.eclipse.text"/>
+ <import plugin="com.aptana.rdt"/>
</requires>
<plugin
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-04 14:38:51
|
Revision: 2435
http://svn.sourceforge.net/rubyeclipse/?rev=2435&view=rev
Author: cawilliams
Date: 2007-05-04 07:38:49 -0700 (Fri, 04 May 2007)
Log Message:
-----------
try not using x-friends modifier on exported package and see if that fixes the build
Modified Paths:
--------------
trunk/com.aptana.rdt/META-INF/MANIFEST.MF
Modified: trunk/com.aptana.rdt/META-INF/MANIFEST.MF
===================================================================
--- trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-04 13:18:36 UTC (rev 2434)
+++ trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-04 14:38:49 UTC (rev 2435)
@@ -8,7 +8,7 @@
Eclipse-LazyStart: true
Bundle-Vendor: Aptana, Inc.
Export-Package: com.aptana.rdt,
- com.aptana.rdt.internal.parser.warnings;x-friends:="com.aptana.rdt.tests",
+ com.aptana.rdt.internal.parser.warnings,
com.aptana.rdt.internal.ui.preferences,
com.aptana.rdt.internal.ui.text.ruby.hover
Require-Bundle: org.rubypeople.rdt.ui,
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-04 13:18:37
|
Revision: 2434
http://svn.sourceforge.net/rubyeclipse/?rev=2434&view=rev
Author: cawilliams
Date: 2007-05-04 06:18:36 -0700 (Fri, 04 May 2007)
Log Message:
-----------
add com.aptana.rdt.tests to feature
Modified Paths:
--------------
trunk/org.rubypeople.rdt-test-feature/feature.xml
Modified: trunk/org.rubypeople.rdt-test-feature/feature.xml
===================================================================
--- trunk/org.rubypeople.rdt-test-feature/feature.xml 2007-05-03 21:37:27 UTC (rev 2433)
+++ trunk/org.rubypeople.rdt-test-feature/feature.xml 2007-05-04 13:18:36 UTC (rev 2434)
@@ -94,4 +94,11 @@
version="0.0.0"
unpack="false"/>
+ <plugin
+ id="com.aptana.rdt.tests"
+ download-size="0"
+ install-size="0"
+ version="0.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...> - 2007-05-03 21:37:30
|
Revision: 2433
http://svn.sourceforge.net/rubyeclipse/?rev=2433&view=rev
Author: cawilliams
Date: 2007-05-03 14:37:27 -0700 (Thu, 03 May 2007)
Log Message:
-----------
check out com.aptana.rdt.tests as part of build
Modified Paths:
--------------
trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml
Modified: trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml
===================================================================
--- trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml 2007-05-03 18:28:38 UTC (rev 2432)
+++ trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml 2007-05-03 21:37:27 UTC (rev 2433)
@@ -120,5 +120,10 @@
<param name="element.id" value="org.rubypeople.rdt.refactoring.tests"/>
<param name="project.name" value="org.rubypeople.rdt.refactoring.tests"/>
</antcall>
+ <antcall target="svn.co">
+ <param name="target" value="plugins"/>
+ <param name="element.id" value="com.aptana.rdt.tests"/>
+ <param name="project.name" value="com.aptana.rdt.tests"/>
+ </antcall>
</target>
</project>
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 18:28:39
|
Revision: 2432
http://svn.sourceforge.net/rubyeclipse/?rev=2432&view=rev
Author: cawilliams
Date: 2007-05-03 11:28:38 -0700 (Thu, 03 May 2007)
Log Message:
-----------
check out new com.aptana.rdt as part of build
Modified Paths:
--------------
trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml
Modified: trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml
===================================================================
--- trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml 2007-05-03 17:51:59 UTC (rev 2431)
+++ trunk/org.rubypeople.rdt.pluginbuilder/build-files/fetchSvnAll.xml 2007-05-03 18:28:38 UTC (rev 2432)
@@ -65,6 +65,11 @@
<param name="element.id" value="org.rubypeople.rdt.refactoring"/>
<param name="project.name" value="org.rubypeople.rdt.refactoring"/>
</antcall>
+ <antcall target="svn.co">
+ <param name="target" value="plugins"/>
+ <param name="element.id" value="com.aptana.rdt"/>
+ <param name="project.name" value="com.aptana.rdt"/>
+ </antcall>
<antcall target="svn.co">
<param name="target" value="features"/>
<param name="element.id" value="org.rubypeople.rdt-tests"/>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:52:02
|
Revision: 2431
http://svn.sourceforge.net/rubyeclipse/?rev=2431&view=rev
Author: cawilliams
Date: 2007-05-03 10:51:59 -0700 (Thu, 03 May 2007)
Log Message:
-----------
add unit tests for refactoring and new aptana rdt extension
Modified Paths:
--------------
trunk/org.rubypeople.rdt.tests.all/plugin.xml
trunk/org.rubypeople.rdt.tests.all/src/org/rubypeople/rdt/tests/all/TS_RdtAllUnitTests.java
Modified: trunk/org.rubypeople.rdt.tests.all/plugin.xml
===================================================================
--- trunk/org.rubypeople.rdt.tests.all/plugin.xml 2007-05-03 17:51:32 UTC (rev 2430)
+++ trunk/org.rubypeople.rdt.tests.all/plugin.xml 2007-05-03 17:51:59 UTC (rev 2431)
@@ -16,6 +16,8 @@
<import plugin="org.rubypeople.rdt.launching.tests"/>
<import plugin="org.rubypeople.rdt.debug.core.tests"/>
<import plugin="org.rubypeople.rdt.ui.tests"/>
+ <import plugin="com.aptana.rdt.tests"/>
+ <import plugin="org.rubypeople.rdt.refactoring.tests"/>
</requires>
</plugin>
Modified: trunk/org.rubypeople.rdt.tests.all/src/org/rubypeople/rdt/tests/all/TS_RdtAllUnitTests.java
===================================================================
--- trunk/org.rubypeople.rdt.tests.all/src/org/rubypeople/rdt/tests/all/TS_RdtAllUnitTests.java 2007-05-03 17:51:32 UTC (rev 2430)
+++ trunk/org.rubypeople.rdt.tests.all/src/org/rubypeople/rdt/tests/all/TS_RdtAllUnitTests.java 2007-05-03 17:51:59 UTC (rev 2431)
@@ -7,7 +7,10 @@
import org.rubypeople.rdt.debug.ui.tests.TS_DebugUi;
import org.rubypeople.rdt.internal.launching.TS_InternalLaunching;
import org.rubypeople.rdt.internal.ui.TS_InternalUi;
+import org.rubypeople.rdt.refactoring.tests.TS_All;
+import com.aptana.rdt.TS_Aptana;
+
public class TS_RdtAllUnitTests {
public static Test suite() {
@@ -25,7 +28,13 @@
// org.rubypeople.rdt.debug.ui.tests
suite.addTest(TS_DebugUi.suite());
+
+ // com.aptana.rdt.tests
+ suite.addTest(TS_Aptana.suite());
+ // org.rubypeople.rdt.refactoring.tests
+ suite.addTest(TS_All.suite());
+
//$JUnit-END$
return suite;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:51:35
|
Revision: 2430
http://svn.sourceforge.net/rubyeclipse/?rev=2430&view=rev
Author: cawilliams
Date: 2007-05-03 10:51:32 -0700 (Thu, 03 May 2007)
Log Message:
-----------
add all-encompassing test suite
Added Paths:
-----------
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/TS_Aptana.java
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/TS_Aptana.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/TS_Aptana.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/TS_Aptana.java 2007-05-03 17:51:32 UTC (rev 2430)
@@ -0,0 +1,14 @@
+package com.aptana.rdt;
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+import com.aptana.rdt.internal.core.parser.warnings.TS_ParserWarnings;
+
+public class TS_Aptana {
+ public static Test suite() {
+ TestSuite suite = new TestSuite("Test for com.aptana.rdt");
+ suite.addTest(TS_ParserWarnings.suite());
+ return suite;
+ }
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:33:38
|
Revision: 2429
http://svn.sourceforge.net/rubyeclipse/?rev=2429&view=rev
Author: cawilliams
Date: 2007-05-03 10:33:37 -0700 (Thu, 03 May 2007)
Log Message:
-----------
add new com.aptana.rdt plugins
Modified Paths:
--------------
trunk/org.rubypeople.rdt-feature/feature.xml
trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml
Modified: trunk/org.rubypeople.rdt-feature/feature.xml
===================================================================
--- trunk/org.rubypeople.rdt-feature/feature.xml 2007-05-03 17:33:13 UTC (rev 2428)
+++ trunk/org.rubypeople.rdt-feature/feature.xml 2007-05-03 17:33:37 UTC (rev 2429)
@@ -347,4 +347,10 @@
version="0.0.0"
unpack="false"/>
+ <plugin
+ id="com.aptana.rdt"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"/>
+
</feature>
Modified: trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml
===================================================================
--- trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml 2007-05-03 17:33:13 UTC (rev 2428)
+++ trunk/org.rubypeople.rdt-feature/unit-tests-feature/feature.xml 2007-05-03 17:33:37 UTC (rev 2429)
@@ -94,4 +94,11 @@
version="0.0.0"
unpack="false"/>
+ <plugin
+ id="com.aptana.rdt.tests"
+ download-size="0"
+ install-size="0"
+ version="0.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...> - 2007-05-03 17:33:14
|
Revision: 2428
http://svn.sourceforge.net/rubyeclipse/?rev=2428&view=rev
Author: cawilliams
Date: 2007-05-03 10:33:13 -0700 (Thu, 03 May 2007)
Log Message:
-----------
Modified Paths:
--------------
trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF
Modified: trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF
===================================================================
--- trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF 2007-05-03 17:31:41 UTC (rev 2427)
+++ trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF 2007-05-03 17:33:13 UTC (rev 2428)
@@ -1,8 +1,8 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
-Bundle-Name: Tests
+Bundle-Name: Aptana RDT Extension Tests
Bundle-SymbolicName: com.aptana.rdt.tests
-Bundle-Version: 1.0.0
+Bundle-Version: 0.0.0
Bundle-Localization: plugin
Require-Bundle: com.aptana.rdt,
org.rubypeople.rdt.core,
@@ -10,3 +10,4 @@
org.eclipse.core.resources,
org.eclipse.core.runtime,
org.junit
+Bundle-Vendor: Aptana, Inc.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:31:43
|
Revision: 2427
http://svn.sourceforge.net/rubyeclipse/?rev=2427&view=rev
Author: cawilliams
Date: 2007-05-03 10:31:41 -0700 (Thu, 03 May 2007)
Log Message:
-----------
rename activator
Modified Paths:
--------------
trunk/com.aptana.rdt/META-INF/MANIFEST.MF
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/core/RubyRedPreferenceInitializer.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AccidentalBooleanAssignmentVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AndOrUsedOnRighthandAssignment.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/CodeComplexityVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/ComparableInclusionVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/EnumerableInclusionVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LintOptions.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LocalsMaskingMethodsVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/MisspelledConstructorVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/RubyRedLint.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SimilarVariableNameVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SubclassCallsSuper.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnecessaryElseVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedParameterVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedPrivateMethodVisitor.java
Added Paths:
-----------
trunk/com.aptana.rdt/src/com/aptana/rdt/AptanaRDTPlugin.java
Removed Paths:
-------------
trunk/com.aptana.rdt/src/com/aptana/rdt/RubyRedPlugin.java
Modified: trunk/com.aptana.rdt/META-INF/MANIFEST.MF
===================================================================
--- trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-03 17:31:41 UTC (rev 2427)
@@ -4,7 +4,7 @@
Bundle-SymbolicName: com.aptana.rdt;singleton:=true
Bundle-Version: 0.0.0
Bundle-ClassPath: lib/sourcetaplm.jar
-Bundle-Activator: com.aptana.rdt.RubyRedPlugin
+Bundle-Activator: com.aptana.rdt.AptanaRDTPlugin
Eclipse-LazyStart: true
Bundle-Vendor: Aptana, Inc.
Export-Package: com.aptana.rdt,
Copied: trunk/com.aptana.rdt/src/com/aptana/rdt/AptanaRDTPlugin.java (from rev 2424, trunk/com.aptana.rdt/src/com/aptana/rdt/RubyRedPlugin.java)
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/AptanaRDTPlugin.java (rev 0)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/AptanaRDTPlugin.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -0,0 +1,248 @@
+package com.aptana.rdt;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.URL;
+
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+import org.rubypeople.rdt.internal.ui.IRubyStatusConstants;
+
+import com.aptana.rdt.internal.ui.RubyRedMessages;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class AptanaRDTPlugin extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "com.aptana.rdt";
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ */
+ public static final String COMPILER_PB_UNUSED_PARAMETER = PLUGIN_ID + ".compiler.problem.unusedParameter"; //$NON-NLS-1$
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_UNUSED_PRIVATE_MEMBER = PLUGIN_ID + ".compiler.problem.unusedPrivateMember"; //$NON-NLS-1$
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_UNNECESSARY_ELSE = PLUGIN_ID + ".compiler.problem.unnecessaryElse"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_LOCAL_MASKS_METHOD = PLUGIN_ID + ".compiler.problem.localVariableMasksMethod"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_MISSPELLED_CONSTRUCTOR = PLUGIN_ID + ".compiler.problem.misspelledConstructor"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT = PLUGIN_ID + ".compiler.problem.possibleAccidentalBooleanAssignment"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_CODE_COMPLEXITY_BRANCHES = PLUGIN_ID + ".compiler.problem.codeComplexityBranches"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_CODE_COMPLEXITY_LINES = PLUGIN_ID + ".compiler.problem.codeComplexityLines"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_CODE_COMPLEXITY_RETURNS = PLUGIN_ID + ".compiler.problem.codeComplexityReturns"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_CODE_COMPLEXITY_LOCALS = PLUGIN_ID + ".compiler.problem.codeComplexityLocals"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_CODE_COMPLEXITY_ARGUMENTS = PLUGIN_ID + ".compiler.problem.codeComplexityArguments"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_MAX_LOCALS = PLUGIN_ID + ".compiler.problem.maxLocals"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_MAX_RETURNS = PLUGIN_ID + ".compiler.problem.maxReturns"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_MAX_BRANCHES = PLUGIN_ID + ".compiler.problem.maxBranches"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_MAX_LINES = PLUGIN_ID + ".compiler.problem.maxLines"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_MAX_ARGUMENTS = PLUGIN_ID + ".compiler.problem.maxArguments"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_SIMILAR_VARIABLE_NAMES = PLUGIN_ID + ".compiler.problem.similarVariableNames"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 0.9.0
+ */
+ public static final String COMPILER_PB_UNREACHABLE_CODE = PLUGIN_ID + ".compiler.problem.unreachableCode"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 1.0.0
+ */
+ public static final String COMPILER_PB_COMPARABLE_MISSING_METHOD = PLUGIN_ID + ".compiler.problem.comparableMissingMethod"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 1.0.0
+ */
+ public static final String COMPILER_PB_ENUMERABLE_MISSING_METHOD = PLUGIN_ID + ".compiler.problem.enumerableMissingMethod"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 1.0.0
+ */
+ public static final String COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER = PLUGIN_ID + ".compiler.problem.subclassDoesntCallSuper"; //$NON-NLS-1$
+
+ /**
+ * Possible configurable option ID.
+ * @see #getDefaultOptions()
+ * @since 1.0.0
+ */
+ public static final String COMPILER_PB_ASSIGNMENT_PRECEDENCE = PLUGIN_ID + ".compiler.problem.assignmentPrecedence"; //$NON-NLS-1$
+
+ // The shared instance
+ private static AptanaRDTPlugin plugin;
+
+ /**
+ * The constructor
+ */
+ public AptanaRDTPlugin() {
+ super();
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ super.stop(context);
+ plugin = null;
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static AptanaRDTPlugin getDefault() {
+ return plugin;
+ }
+
+ /**
+ * Returns an image descriptor for the image file at the given
+ * plug-in relative path
+ *
+ * @param path the path
+ * @return the image descriptor
+ */
+ public static ImageDescriptor getImageDescriptor(String path) {
+ return imageDescriptorFromPlugin(PLUGIN_ID, path);
+ }
+
+ public static File getFileInPlugin(IPath path) {
+ try {
+ URL installURL = new URL(
+ getDefault().getBundle().getEntry("/"), path.toString()); //$NON-NLS-1$
+ URL localURL = FileLocator.toFileURL(installURL);
+ return new File(localURL.getFile());
+ } catch (IOException ioe) {
+ return null;
+ }
+ }
+
+ public static void log(Throwable e) {
+ log(new Status(IStatus.ERROR, getPluginId(), IRubyStatusConstants.INTERNAL_ERROR, RubyRedMessages.RubyRedPlugin_internal_error, e));
+ }
+
+ public static void log(IStatus status) {
+ getDefault().getLog().log(status);
+ }
+
+ public static String getPluginId() {
+ return PLUGIN_ID;
+ }
+}
Deleted: trunk/com.aptana.rdt/src/com/aptana/rdt/RubyRedPlugin.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/RubyRedPlugin.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/RubyRedPlugin.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -1,248 +0,0 @@
-package com.aptana.rdt;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.URL;
-
-import org.eclipse.core.runtime.FileLocator;
-import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.ui.plugin.AbstractUIPlugin;
-import org.osgi.framework.BundleContext;
-import org.rubypeople.rdt.internal.ui.IRubyStatusConstants;
-
-import com.aptana.rdt.internal.ui.RubyRedMessages;
-
-/**
- * The activator class controls the plug-in life cycle
- */
-public class RubyRedPlugin extends AbstractUIPlugin {
-
- // The plug-in ID
- public static final String PLUGIN_ID = "com.aptana.rdt";
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- */
- public static final String COMPILER_PB_UNUSED_PARAMETER = PLUGIN_ID + ".compiler.problem.unusedParameter"; //$NON-NLS-1$
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_UNUSED_PRIVATE_MEMBER = PLUGIN_ID + ".compiler.problem.unusedPrivateMember"; //$NON-NLS-1$
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_UNNECESSARY_ELSE = PLUGIN_ID + ".compiler.problem.unnecessaryElse"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_LOCAL_MASKS_METHOD = PLUGIN_ID + ".compiler.problem.localVariableMasksMethod"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_MISSPELLED_CONSTRUCTOR = PLUGIN_ID + ".compiler.problem.misspelledConstructor"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT = PLUGIN_ID + ".compiler.problem.possibleAccidentalBooleanAssignment"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_CODE_COMPLEXITY_BRANCHES = PLUGIN_ID + ".compiler.problem.codeComplexityBranches"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_CODE_COMPLEXITY_LINES = PLUGIN_ID + ".compiler.problem.codeComplexityLines"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_CODE_COMPLEXITY_RETURNS = PLUGIN_ID + ".compiler.problem.codeComplexityReturns"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_CODE_COMPLEXITY_LOCALS = PLUGIN_ID + ".compiler.problem.codeComplexityLocals"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_CODE_COMPLEXITY_ARGUMENTS = PLUGIN_ID + ".compiler.problem.codeComplexityArguments"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_MAX_LOCALS = PLUGIN_ID + ".compiler.problem.maxLocals"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_MAX_RETURNS = PLUGIN_ID + ".compiler.problem.maxReturns"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_MAX_BRANCHES = PLUGIN_ID + ".compiler.problem.maxBranches"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_MAX_LINES = PLUGIN_ID + ".compiler.problem.maxLines"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_MAX_ARGUMENTS = PLUGIN_ID + ".compiler.problem.maxArguments"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_SIMILAR_VARIABLE_NAMES = PLUGIN_ID + ".compiler.problem.similarVariableNames"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 0.9.0
- */
- public static final String COMPILER_PB_UNREACHABLE_CODE = PLUGIN_ID + ".compiler.problem.unreachableCode"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 1.0.0
- */
- public static final String COMPILER_PB_COMPARABLE_MISSING_METHOD = PLUGIN_ID + ".compiler.problem.comparableMissingMethod"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 1.0.0
- */
- public static final String COMPILER_PB_ENUMERABLE_MISSING_METHOD = PLUGIN_ID + ".compiler.problem.enumerableMissingMethod"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 1.0.0
- */
- public static final String COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER = PLUGIN_ID + ".compiler.problem.subclassDoesntCallSuper"; //$NON-NLS-1$
-
- /**
- * Possible configurable option ID.
- * @see #getDefaultOptions()
- * @since 1.0.0
- */
- public static final String COMPILER_PB_ASSIGNMENT_PRECEDENCE = PLUGIN_ID + ".compiler.problem.assignmentPrecedence"; //$NON-NLS-1$
-
- // The shared instance
- private static RubyRedPlugin plugin;
-
- /**
- * The constructor
- */
- public RubyRedPlugin() {
- super();
- plugin = this;
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
- */
- public void start(BundleContext context) throws Exception {
- super.start(context);
-
- }
-
- /*
- * (non-Javadoc)
- * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
- */
- public void stop(BundleContext context) throws Exception {
- super.stop(context);
- plugin = null;
- }
-
- /**
- * Returns the shared instance
- *
- * @return the shared instance
- */
- public static RubyRedPlugin getDefault() {
- return plugin;
- }
-
- /**
- * Returns an image descriptor for the image file at the given
- * plug-in relative path
- *
- * @param path the path
- * @return the image descriptor
- */
- public static ImageDescriptor getImageDescriptor(String path) {
- return imageDescriptorFromPlugin(PLUGIN_ID, path);
- }
-
- public static File getFileInPlugin(IPath path) {
- try {
- URL installURL = new URL(
- getDefault().getBundle().getEntry("/"), path.toString()); //$NON-NLS-1$
- URL localURL = FileLocator.toFileURL(installURL);
- return new File(localURL.getFile());
- } catch (IOException ioe) {
- return null;
- }
- }
-
- public static void log(Throwable e) {
- log(new Status(IStatus.ERROR, getPluginId(), IRubyStatusConstants.INTERNAL_ERROR, RubyRedMessages.RubyRedPlugin_internal_error, e));
- }
-
- public static void log(IStatus status) {
- getDefault().getLog().log(status);
- }
-
- public static String getPluginId() {
- return PLUGIN_ID;
- }
-}
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/core/RubyRedPreferenceInitializer.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/core/RubyRedPreferenceInitializer.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/core/RubyRedPreferenceInitializer.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -7,7 +7,7 @@
import org.eclipse.core.runtime.preferences.DefaultScope;
import org.eclipse.core.runtime.preferences.IEclipsePreferences;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
import com.aptana.rdt.internal.parser.warnings.LintOptions;
public class RubyRedPreferenceInitializer extends AbstractPreferenceInitializer {
@@ -17,7 +17,7 @@
Map defaultOptionsMap = new LintOptions().getMap(); // compiler defaults
// Store default values to default preferences
- IEclipsePreferences defaultPreferences = new DefaultScope().getNode(RubyRedPlugin.PLUGIN_ID);
+ IEclipsePreferences defaultPreferences = new DefaultScope().getNode(AptanaRDTPlugin.PLUGIN_ID);
for (Iterator iter = defaultOptionsMap.entrySet().iterator(); iter.hasNext();) {
Map.Entry entry = (Map.Entry) iter.next();
String optionName = (String) entry.getKey();
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AccidentalBooleanAssignmentVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AccidentalBooleanAssignmentVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AccidentalBooleanAssignmentVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -9,7 +9,7 @@
import org.jruby.evaluator.Instruction;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class AccidentalBooleanAssignmentVisitor extends RubyLintVisitor {
@@ -19,7 +19,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT;
+ return AptanaRDTPlugin.COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT;
}
public Instruction visitIfNode(IfNode iVisited) {
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AndOrUsedOnRighthandAssignment.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AndOrUsedOnRighthandAssignment.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AndOrUsedOnRighthandAssignment.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -7,7 +7,7 @@
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
import org.rubypeople.rdt.internal.core.util.ASTUtil;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class AndOrUsedOnRighthandAssignment extends RubyLintVisitor {
@@ -17,7 +17,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_ASSIGNMENT_PRECEDENCE;
+ return AptanaRDTPlugin.COMPILER_PB_ASSIGNMENT_PRECEDENCE;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/CodeComplexityVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/CodeComplexityVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/CodeComplexityVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -14,7 +14,7 @@
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
import org.rubypeople.rdt.internal.core.util.ASTUtil;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class CodeComplexityVisitor extends RubyLintVisitor {
@@ -35,11 +35,11 @@
public CodeComplexityVisitor(Map options, String contents) {
super(contents);
fOptions = options;
- maxArgLength = getInt(RubyRedPlugin.COMPILER_PB_MAX_ARGUMENTS, 5);
- maxLines = getInt(RubyRedPlugin.COMPILER_PB_MAX_LINES, 20);
- maxReturns = getInt(RubyRedPlugin.COMPILER_PB_MAX_RETURNS, 5);
- maxBranches = getInt(RubyRedPlugin.COMPILER_PB_MAX_BRANCHES, 5);
- maxLocals = getInt(RubyRedPlugin.COMPILER_PB_MAX_LOCALS, 4);
+ maxArgLength = getInt(AptanaRDTPlugin.COMPILER_PB_MAX_ARGUMENTS, 5);
+ maxLines = getInt(AptanaRDTPlugin.COMPILER_PB_MAX_LINES, 20);
+ maxReturns = getInt(AptanaRDTPlugin.COMPILER_PB_MAX_RETURNS, 5);
+ maxBranches = getInt(AptanaRDTPlugin.COMPILER_PB_MAX_BRANCHES, 5);
+ maxLocals = getInt(AptanaRDTPlugin.COMPILER_PB_MAX_LOCALS, 4);
returnCount = 0;
branchCount = 0;
}
@@ -54,7 +54,7 @@
@Override
protected String getOptionKey() {
// TODO Break this visitor up into multiple! One for each key.
- return RubyRedPlugin.COMPILER_PB_MAX_ARGUMENTS;
+ return AptanaRDTPlugin.COMPILER_PB_MAX_ARGUMENTS;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/ComparableInclusionVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/ComparableInclusionVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/ComparableInclusionVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -10,7 +10,7 @@
import org.jruby.lexer.yacc.ISourcePosition;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class ComparableInclusionVisitor extends RubyLintVisitor {
@@ -28,7 +28,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_COMPARABLE_MISSING_METHOD;
+ return AptanaRDTPlugin.COMPILER_PB_COMPARABLE_MISSING_METHOD;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/EnumerableInclusionVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/EnumerableInclusionVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/EnumerableInclusionVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -10,7 +10,7 @@
import org.jruby.lexer.yacc.ISourcePosition;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class EnumerableInclusionVisitor extends RubyLintVisitor {
@@ -28,7 +28,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_ENUMERABLE_MISSING_METHOD;
+ return AptanaRDTPlugin.COMPILER_PB_ENUMERABLE_MISSING_METHOD;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LintOptions.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LintOptions.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LintOptions.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -5,7 +5,7 @@
import org.rubypeople.rdt.core.RubyCore;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class LintOptions {
@@ -59,28 +59,28 @@
public Map getMap() {
Map optionsMap = new HashMap(30);
- optionsMap.put(RubyRedPlugin.COMPILER_PB_UNUSED_PRIVATE_MEMBER, getSeverityString(UnusedPrivateMember));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER, getSeverityString(SubclassDoesntCallSuper));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_ASSIGNMENT_PRECEDENCE, getSeverityString(AssignmentPrecedence));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_UNUSED_PARAMETER, getSeverityString(UnusedArgument));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_UNNECESSARY_ELSE, getSeverityString(UnnecessaryElse));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_MISSPELLED_CONSTRUCTOR, getSeverityString(MisspelledConstructor));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT, getSeverityString(PossibleAccidentalBooleanAssignment));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_LOCAL_MASKS_METHOD, getSeverityString(LocalVariableMasksMethod));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_ARGUMENTS, getSeverityString(MaxArguments));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_BRANCHES, getSeverityString(MaxBranches));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_LINES, getSeverityString(MaxLines));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_LOCALS, getSeverityString(MaxLocals));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_RETURNS, getSeverityString(MaxReturns));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_SIMILAR_VARIABLE_NAMES, getSeverityString(SimilarVariableNames));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_UNREACHABLE_CODE, getSeverityString(UnreachableCode));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_COMPARABLE_MISSING_METHOD, getSeverityString(ComparableMissingMethod));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_ENUMERABLE_MISSING_METHOD, getSeverityString(EnumerableMissingMethod));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_MAX_ARGUMENTS, String.valueOf(maxArguments));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_MAX_LINES, String.valueOf(maxLines));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_MAX_LOCALS, String.valueOf(maxLocals));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_MAX_RETURNS, String.valueOf(maxReturns));
- optionsMap.put(RubyRedPlugin.COMPILER_PB_MAX_BRANCHES, String.valueOf(maxBranches));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_UNUSED_PRIVATE_MEMBER, getSeverityString(UnusedPrivateMember));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER, getSeverityString(SubclassDoesntCallSuper));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_ASSIGNMENT_PRECEDENCE, getSeverityString(AssignmentPrecedence));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_UNUSED_PARAMETER, getSeverityString(UnusedArgument));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_UNNECESSARY_ELSE, getSeverityString(UnnecessaryElse));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_MISSPELLED_CONSTRUCTOR, getSeverityString(MisspelledConstructor));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT, getSeverityString(PossibleAccidentalBooleanAssignment));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_LOCAL_MASKS_METHOD, getSeverityString(LocalVariableMasksMethod));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_ARGUMENTS, getSeverityString(MaxArguments));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_BRANCHES, getSeverityString(MaxBranches));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_LINES, getSeverityString(MaxLines));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_LOCALS, getSeverityString(MaxLocals));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_RETURNS, getSeverityString(MaxReturns));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_SIMILAR_VARIABLE_NAMES, getSeverityString(SimilarVariableNames));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_UNREACHABLE_CODE, getSeverityString(UnreachableCode));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_COMPARABLE_MISSING_METHOD, getSeverityString(ComparableMissingMethod));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_ENUMERABLE_MISSING_METHOD, getSeverityString(EnumerableMissingMethod));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_MAX_ARGUMENTS, String.valueOf(maxArguments));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_MAX_LINES, String.valueOf(maxLines));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_MAX_LOCALS, String.valueOf(maxLocals));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_MAX_RETURNS, String.valueOf(maxReturns));
+ optionsMap.put(AptanaRDTPlugin.COMPILER_PB_MAX_BRANCHES, String.valueOf(maxBranches));
return optionsMap;
}
@@ -94,24 +94,24 @@
public void set(Map optionsMap) {
Object optionValue;
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_UNUSED_PRIVATE_MEMBER)) != null) updateSeverity(UnusedPrivateMember, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_UNUSED_PARAMETER)) != null) updateSeverity(UnusedArgument, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_UNNECESSARY_ELSE)) != null) updateSeverity(UnnecessaryElse, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_MISSPELLED_CONSTRUCTOR)) != null) updateSeverity(MisspelledConstructor, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT)) != null) updateSeverity(PossibleAccidentalBooleanAssignment, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_LOCAL_MASKS_METHOD)) != null) updateSeverity(LocalVariableMasksMethod, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_ARGUMENTS)) != null) updateSeverity(MaxArguments, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_BRANCHES)) != null) updateSeverity(MaxBranches, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_LINES)) != null) updateSeverity(MaxLines, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_LOCALS)) != null) updateSeverity(MaxLocals, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_CODE_COMPLEXITY_RETURNS)) != null) updateSeverity(MaxReturns, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_SIMILAR_VARIABLE_NAMES)) != null) updateSeverity(SimilarVariableNames, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_UNREACHABLE_CODE)) != null) updateSeverity(UnreachableCode, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_COMPARABLE_MISSING_METHOD)) != null) updateSeverity(ComparableMissingMethod, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_ENUMERABLE_MISSING_METHOD)) != null) updateSeverity(EnumerableMissingMethod, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER)) != null) updateSeverity(SubclassDoesntCallSuper, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_ASSIGNMENT_PRECEDENCE)) != null) updateSeverity(AssignmentPrecedence, optionValue);
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_MAX_LOCALS)) != null) {
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_UNUSED_PRIVATE_MEMBER)) != null) updateSeverity(UnusedPrivateMember, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_UNUSED_PARAMETER)) != null) updateSeverity(UnusedArgument, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_UNNECESSARY_ELSE)) != null) updateSeverity(UnnecessaryElse, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_MISSPELLED_CONSTRUCTOR)) != null) updateSeverity(MisspelledConstructor, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_POSSIBLE_ACCIDENTAL_BOOLEAN_ASSIGNMENT)) != null) updateSeverity(PossibleAccidentalBooleanAssignment, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_LOCAL_MASKS_METHOD)) != null) updateSeverity(LocalVariableMasksMethod, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_ARGUMENTS)) != null) updateSeverity(MaxArguments, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_BRANCHES)) != null) updateSeverity(MaxBranches, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_LINES)) != null) updateSeverity(MaxLines, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_LOCALS)) != null) updateSeverity(MaxLocals, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_CODE_COMPLEXITY_RETURNS)) != null) updateSeverity(MaxReturns, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_SIMILAR_VARIABLE_NAMES)) != null) updateSeverity(SimilarVariableNames, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_UNREACHABLE_CODE)) != null) updateSeverity(UnreachableCode, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_COMPARABLE_MISSING_METHOD)) != null) updateSeverity(ComparableMissingMethod, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_ENUMERABLE_MISSING_METHOD)) != null) updateSeverity(EnumerableMissingMethod, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER)) != null) updateSeverity(SubclassDoesntCallSuper, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_ASSIGNMENT_PRECEDENCE)) != null) updateSeverity(AssignmentPrecedence, optionValue);
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_MAX_LOCALS)) != null) {
if (optionValue instanceof String) {
String stringValue = (String) optionValue;
try {
@@ -122,7 +122,7 @@
}
}
}
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_MAX_LINES)) != null) {
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_MAX_LINES)) != null) {
if (optionValue instanceof String) {
String stringValue = (String) optionValue;
try {
@@ -133,7 +133,7 @@
}
}
}
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_MAX_BRANCHES)) != null) {
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_MAX_BRANCHES)) != null) {
if (optionValue instanceof String) {
String stringValue = (String) optionValue;
try {
@@ -144,7 +144,7 @@
}
}
}
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_MAX_ARGUMENTS)) != null) {
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_MAX_ARGUMENTS)) != null) {
if (optionValue instanceof String) {
String stringValue = (String) optionValue;
try {
@@ -155,7 +155,7 @@
}
}
}
- if ((optionValue = optionsMap.get(RubyRedPlugin.COMPILER_PB_MAX_RETURNS)) != null) {
+ if ((optionValue = optionsMap.get(AptanaRDTPlugin.COMPILER_PB_MAX_RETURNS)) != null) {
if (optionValue instanceof String) {
String stringValue = (String) optionValue;
try {
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LocalsMaskingMethodsVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LocalsMaskingMethodsVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LocalsMaskingMethodsVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -9,7 +9,7 @@
import org.jruby.evaluator.Instruction;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class LocalsMaskingMethodsVisitor extends RubyLintVisitor {
@@ -24,7 +24,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_LOCAL_MASKS_METHOD;
+ return AptanaRDTPlugin.COMPILER_PB_LOCAL_MASKS_METHOD;
}
public Instruction visitClassNode(ClassNode iVisited) {
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/MisspelledConstructorVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/MisspelledConstructorVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/MisspelledConstructorVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -4,7 +4,7 @@
import org.jruby.evaluator.Instruction;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class MisspelledConstructorVisitor extends RubyLintVisitor {
@@ -22,7 +22,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_MISSPELLED_CONSTRUCTOR;
+ return AptanaRDTPlugin.COMPILER_PB_MISSPELLED_CONSTRUCTOR;
}
}
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/RubyRedLint.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/RubyRedLint.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/RubyRedLint.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -17,7 +17,7 @@
import org.rubypeople.rdt.internal.core.parser.warnings.EmptyStatementVisitor;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class RubyRedLint extends CompilationParticipant {
@@ -32,7 +32,7 @@
List<CategorizedProblem> problems = visitor.getProblems();
context.putProblems(IRubyModelMarker.RUBY_MODEL_PROBLEM_MARKER, problems.toArray(new CategorizedProblem[problems.size()]));
} catch (RubyModelException e) {
- RubyRedPlugin.log(e);
+ AptanaRDTPlugin.log(e);
}
}
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SimilarVariableNameVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SimilarVariableNameVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SimilarVariableNameVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -22,7 +22,7 @@
import org.jruby.evaluator.Instruction;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class SimilarVariableNameVisitor extends RubyLintVisitor {
@@ -35,7 +35,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_SIMILAR_VARIABLE_NAMES;
+ return AptanaRDTPlugin.COMPILER_PB_SIMILAR_VARIABLE_NAMES;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SubclassCallsSuper.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SubclassCallsSuper.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SubclassCallsSuper.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -8,7 +8,7 @@
import org.jruby.evaluator.Instruction;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class SubclassCallsSuper extends RubyLintVisitor {
@@ -22,7 +22,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER;
+ return AptanaRDTPlugin.COMPILER_PB_SUBCLASS_DOESNT_CALL_SUPER;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnecessaryElseVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnecessaryElseVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnecessaryElseVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -14,7 +14,7 @@
import org.rubypeople.rdt.internal.core.parser.InOrderVisitor;
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class UnecessaryElseVisitor extends RubyLintVisitor {
@@ -24,7 +24,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_UNNECESSARY_ELSE;
+ return AptanaRDTPlugin.COMPILER_PB_UNNECESSARY_ELSE;
}
@Override
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedParameterVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedParameterVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedParameterVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -15,7 +15,7 @@
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
import org.rubypeople.rdt.internal.core.util.ASTUtil;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class UnusedParameterVisitor extends RubyLintVisitor {
@@ -28,7 +28,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_UNUSED_PARAMETER;
+ return AptanaRDTPlugin.COMPILER_PB_UNUSED_PARAMETER;
}
public Instruction visitDefnNode(DefnNode iVisited) {
Modified: trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedPrivateMethodVisitor.java
===================================================================
--- trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedPrivateMethodVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
+++ trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedPrivateMethodVisitor.java 2007-05-03 17:31:41 UTC (rev 2427)
@@ -15,7 +15,7 @@
import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
import org.rubypeople.rdt.internal.core.util.ASTUtil;
-import com.aptana.rdt.RubyRedPlugin;
+import com.aptana.rdt.AptanaRDTPlugin;
public class UnusedPrivateMethodVisitor extends RubyLintVisitor {
@@ -73,7 +73,7 @@
@Override
protected String getOptionKey() {
- return RubyRedPlugin.COMPILER_PB_UNUSED_PRIVATE_MEMBER;
+ return AptanaRDTPlugin.COMPILER_PB_UNUSED_PRIVATE_MEMBER;
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:27:40
|
Revision: 2426
http://svn.sourceforge.net/rubyeclipse/?rev=2426&view=rev
Author: cawilliams
Date: 2007-05-03 10:27:38 -0700 (Thu, 03 May 2007)
Log Message:
-----------
Added Paths:
-----------
trunk/com.aptana.rdt.tests/.classpath
trunk/com.aptana.rdt.tests/.project
trunk/com.aptana.rdt.tests/META-INF/
trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF
trunk/com.aptana.rdt.tests/build.properties
trunk/com.aptana.rdt.tests/src/
trunk/com.aptana.rdt.tests/src/com/
trunk/com.aptana.rdt.tests/src/com/aptana/
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/MockProblemRequestor.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_CodeComplexity.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_ComparableInclusionVisitor.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_EnumerableInclusionVisitor.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_SimilarVariableNameVisitor.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_UnecessaryElseVisitor.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TS_ParserWarnings.java
trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/WarningVisitorTest.java
Added: trunk/com.aptana.rdt.tests/.classpath
===================================================================
--- trunk/com.aptana.rdt.tests/.classpath (rev 0)
+++ trunk/com.aptana.rdt.tests/.classpath 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <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="output" path="bin"/>
+</classpath>
Added: trunk/com.aptana.rdt.tests/.project
===================================================================
--- trunk/com.aptana.rdt.tests/.project (rev 0)
+++ trunk/com.aptana.rdt.tests/.project 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>com.aptana.rdt.tests</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
Added: trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF
===================================================================
--- trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF (rev 0)
+++ trunk/com.aptana.rdt.tests/META-INF/MANIFEST.MF 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Tests
+Bundle-SymbolicName: com.aptana.rdt.tests
+Bundle-Version: 1.0.0
+Bundle-Localization: plugin
+Require-Bundle: com.aptana.rdt,
+ org.rubypeople.rdt.core,
+ org.jruby,
+ org.eclipse.core.resources,
+ org.eclipse.core.runtime,
+ org.junit
Added: trunk/com.aptana.rdt.tests/build.properties
===================================================================
--- trunk/com.aptana.rdt.tests/build.properties (rev 0)
+++ trunk/com.aptana.rdt.tests/build.properties 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,3 @@
+source.. = src/
+bin.includes = META-INF/,\
+ .
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/MockProblemRequestor.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/MockProblemRequestor.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/MockProblemRequestor.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,41 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.rubypeople.rdt.core.IProblemRequestor;
+import org.rubypeople.rdt.core.compiler.IProblem;
+
+public class MockProblemRequestor implements IProblemRequestor {
+
+ private boolean active;
+ private Set<IProblem> problems = new HashSet<IProblem>();
+
+ public void acceptProblem(IProblem problem) {
+ problems.add(problem);
+ }
+
+ public void beginReporting() {
+ active = true;
+ }
+
+ public void endReporting() {
+ active = false;
+ }
+
+ public boolean isActive() {
+ return active;
+ }
+
+ public int numberOfProblems() {
+ return problems.size();
+ }
+
+ public IProblem getProblemAtLine(int i) {
+ for (IProblem problem : problems) {
+ if (problem.getSourceLineNumber() == i) return problem;
+ }
+ return null;
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_CodeComplexity.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_CodeComplexity.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_CodeComplexity.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,61 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
+
+import com.aptana.rdt.internal.parser.warnings.CodeComplexityVisitor;
+
+
+public class TC_CodeComplexity extends WarningVisitorTest {
+
+ private static final int MAX_LINES = 20;
+
+ @Override
+ protected RubyLintVisitor createVisitor(String code) {
+ return new CodeComplexityVisitor(code);
+ }
+
+ // TODO Add tests for max branches
+ // TODO Add tests for max method params
+ // TODO Add tests for max locals
+ // TODO Add tests for max returns
+
+ public void testTooManyLines() throws Exception {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append("def method\n");
+ for (int i = 1; i <= MAX_LINES + 1; i++) {
+ buffer.append(" # line ");
+ buffer.append(i);
+ buffer.append("\n");
+ }
+ buffer.append("end\n");
+ parse(buffer.toString());
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testEqualToMaxLines() throws Exception {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append("def method\n");
+ for (int i = 1; i <= MAX_LINES; i++) {
+ buffer.append(" # line ");
+ buffer.append(i);
+ buffer.append("\n");
+ }
+ buffer.append("end\n");
+ parse(buffer.toString());
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testLessThanMaxLines() throws Exception {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append("def method\n");
+ for (int i = 1; i <= MAX_LINES - 1; i++) {
+ buffer.append(" # line ");
+ buffer.append(i);
+ buffer.append("\n");
+ }
+ buffer.append("end\n");
+ parse(buffer.toString());
+ assertEquals(0, numberOfProblems());
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_ComparableInclusionVisitor.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_ComparableInclusionVisitor.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_ComparableInclusionVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,31 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
+
+import com.aptana.rdt.internal.parser.warnings.ComparableInclusionVisitor;
+
+public class TC_ComparableInclusionVisitor extends WarningVisitorTest {
+
+ @Override
+ protected RubyLintVisitor createVisitor(String code) {
+ return new ComparableInclusionVisitor(code);
+ }
+
+ public void testBasicCase() {
+ parse("class Chris\n" +
+ " include Comparable\n" +
+ "end\n");
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testNoFalsePositive() {
+ parse("class Chris\n" +
+ " include Comparable\n" +
+ " def <=>(other)\n" +
+ " @var <=> other.var\n" +
+ " end\n" +
+ "end\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_EnumerableInclusionVisitor.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_EnumerableInclusionVisitor.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_EnumerableInclusionVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,31 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
+
+import com.aptana.rdt.internal.parser.warnings.EnumerableInclusionVisitor;
+
+public class TC_EnumerableInclusionVisitor extends WarningVisitorTest {
+
+ @Override
+ protected RubyLintVisitor createVisitor(String code) {
+ return new EnumerableInclusionVisitor(code);
+ }
+
+ public void testBasicCase() {
+ parse("class Chris\n" +
+ " include Enumerable\n" +
+ "end\n");
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testNoFalsePositive() {
+ parse("class Chris\n" +
+ " include Enumerable\n" +
+ " def each\n" +
+ " yield 1\n" +
+ " end\n" +
+ "end\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_SimilarVariableNameVisitor.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_SimilarVariableNameVisitor.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_SimilarVariableNameVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,132 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
+
+import com.aptana.rdt.internal.parser.warnings.SimilarVariableNameVisitor;
+
+public class TC_SimilarVariableNameVisitor extends WarningVisitorTest {
+
+ @Override
+ protected RubyLintVisitor createVisitor(String code) {
+ return new SimilarVariableNameVisitor(code);
+ }
+
+ public void testEmptyHasNoProblems() throws Exception {
+ String code = "";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testReferToLocalWithSimilarName() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " local = 1\n" +
+ " puts lcal\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testTranspositionDoesntPushSmallVariablesAboveThreshold() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " local = 1\n" +
+ " puts lcoal\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testLocalDoesntClashWithInstance() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " local = 1\n" +
+ " puts @local\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testLocalDoesntClashWithClassVar() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " localcalifragillistic = 1\n" +
+ " puts @@localcalifragillistic\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testInstanceDoesntClashWithClassVar() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " @localcalifragillistic = 1\n" +
+ " puts @@localcalifragillistic\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testReallySmallVariablesDontTriggerProblem() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " @ca = 1\n" +
+ " puts @cb\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testReallySmallClassVariablesDontTriggerProblem() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " @@a = 1\n" +
+ " puts @@b\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testTooDisimilarNameWontTriggerProblem() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " local = 1\n" +
+ " puts llal\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(0, numberOfProblems());
+ }
+
+// TODO Also watch for similarity in constant names?
+
+ public void testReferToInstanceVarWithSimilarName() throws Exception {
+ String code = "class Ralph\n" +
+ " def name\n" +
+ " @local = 1\n" +
+ " puts @lcal\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testReferToClassVarWithSimilarName() throws Exception {
+ String code = "class Ralph\n" +
+ " def self.name\n" +
+ " @@local = 1\n" +
+ " puts @@lcal\n" +
+ " end\n" +
+ "end\n";
+ parse(code);
+ assertEquals(1, numberOfProblems());
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_UnecessaryElseVisitor.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_UnecessaryElseVisitor.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TC_UnecessaryElseVisitor.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,146 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import org.rubypeople.rdt.core.IProblemRequestor;
+import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
+
+import com.aptana.rdt.internal.parser.warnings.UnecessaryElseVisitor;
+
+
+public class TC_UnecessaryElseVisitor extends WarningVisitorTest {
+
+ @Override
+ protected RubyLintVisitor createVisitor(String code) {
+ return new UnecessaryElseVisitor(code);
+ }
+
+ public void testSimpleIfElse() throws Exception {
+ parse("if true\nreturn\nelse\nputs 'Hi'\nend\n");
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testIfWithNoElseDoesntGetMarked() throws Exception {
+ parse("if true\nputs 'Hi'\nend\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testIfElseWithNoExplicitReturnDoesntGetMarked() throws Exception {
+ parse("if true\n'Hi'\nelse\n'Hello'\nend\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testNestedIfs() throws Exception {
+ parse("if true\n" +
+ " if false\n" +
+ " return\n" +
+ " end\n" +
+ " 'Hi'\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testNestedIfsB() throws Exception {
+ parse("if true\n" +
+ " if false\n" +
+ " return\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testNestedIfsAllWithExplicitReturns() throws Exception {
+ parse("if true\n" +
+ " if false\n" +
+ " return\n" +
+ " else\n" +
+ " return\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(2, numberOfProblems());
+ }
+
+ public void testIfModifierIsntProblem() throws Exception {
+ parse("puts 'hello' if true\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testUnlessModifierIsntProblem() throws Exception {
+ parse("puts 'hello' unless true\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testUnlessWithEachCanHaveProblem() throws Exception {
+ parse("unless true\n" +
+ " if false\n" +
+ " return\n" +
+ " else\n" +
+ " return\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(2, numberOfProblems());
+ }
+
+ public void testSwitchInsideIfWithAllExplicitReturns() throws Exception {
+ parse("if true\n" +
+ " case thing\n" +
+ " when comparison1\n" +
+ " return\n" +
+ " when comparison2\n" +
+ " return\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testSwitchInsideIfWithoutAllHavingExplicitReturns() throws Exception {
+ parse("if true\n" +
+ " case thing\n" +
+ " when comparison1\n" +
+ " return\n" +
+ " when comparison2\n" +
+ " puts 'Hello world!'\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+ public void testSwitchInsideUnlessWithAllExplicitReturns() throws Exception {
+ parse("unless true\n" +
+ " case thing\n" +
+ " when comparison1\n" +
+ " return\n" +
+ " when comparison2\n" +
+ " return\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(1, numberOfProblems());
+ }
+
+ public void testSwitchInsideUnlessWithoutAllHavingExplicitReturns() throws Exception {
+ parse("unless true\n" +
+ " case thing\n" +
+ " when comparison1\n" +
+ " return\n" +
+ " when comparison2\n" +
+ " puts 'Hello world!'\n" +
+ " end\n" +
+ "else\n" +
+ " 'Hello'\n" +
+ "end\n");
+ assertEquals(0, numberOfProblems());
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TS_ParserWarnings.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TS_ParserWarnings.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/TS_ParserWarnings.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,22 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+
+import junit.framework.Test;
+import junit.framework.TestSuite;
+
+public class TS_ParserWarnings {
+
+ public static Test suite() {
+ TestSuite suite = new TestSuite(
+ "Parser warnings");
+ //$JUnit-BEGIN$
+ suite.addTestSuite(TC_SimilarVariableNameVisitor.class);
+ suite.addTestSuite(TC_UnecessaryElseVisitor.class);
+ suite.addTestSuite(TC_CodeComplexity.class);
+ suite.addTestSuite(TC_ComparableInclusionVisitor.class);
+ suite.addTestSuite(TC_EnumerableInclusionVisitor.class);
+ //$JUnit-END$
+ return suite;
+ }
+
+}
Added: trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/WarningVisitorTest.java
===================================================================
--- trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/WarningVisitorTest.java (rev 0)
+++ trunk/com.aptana.rdt.tests/src/com/aptana/rdt/internal/core/parser/warnings/WarningVisitorTest.java 2007-05-03 17:27:38 UTC (rev 2426)
@@ -0,0 +1,43 @@
+package com.aptana.rdt.internal.core.parser.warnings;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import junit.framework.TestCase;
+
+import org.jruby.ast.Node;
+import org.rubypeople.rdt.core.compiler.IProblem;
+import org.rubypeople.rdt.internal.core.parser.RubyParser;
+import org.rubypeople.rdt.internal.core.parser.warnings.DelegatingVisitor;
+import org.rubypeople.rdt.internal.core.parser.warnings.RubyLintVisitor;
+
+public abstract class WarningVisitorTest extends TestCase {
+
+ private MockProblemRequestor problemRequestor;
+ private RubyParser parser;
+
+ @Override
+ protected void setUp() throws Exception {
+ super.setUp();
+ problemRequestor = new MockProblemRequestor();
+ parser = new RubyParser();
+ }
+
+ protected void parse(String code) {
+ Node root = parser.parse(code);
+ List<RubyLintVisitor> visitors = new ArrayList<RubyLintVisitor>();
+ visitors.add(createVisitor(code));
+ DelegatingVisitor visitor = new DelegatingVisitor(visitors);
+ root.accept(visitor);
+ }
+
+ public int numberOfProblems() {
+ return problemRequestor.numberOfProblems();
+ }
+
+ protected IProblem getProblemAtLine(int i) {
+ return problemRequestor.getProblemAtLine(i);
+ }
+
+ abstract protected RubyLintVisitor createVisitor(String code);
+}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:27:21
|
Revision: 2425
http://svn.sourceforge.net/rubyeclipse/?rev=2425&view=rev
Author: cawilliams
Date: 2007-05-03 10:27:20 -0700 (Thu, 03 May 2007)
Log Message:
-----------
Share project 'com.aptana.rdt.tests' into 'https://rubyeclipse.svn.sourceforge.net/svnroot/rubyeclipse'
Added Paths:
-----------
trunk/com.aptana.rdt.tests/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <caw...@us...> - 2007-05-03 17:26:49
|
Revision: 2424
http://svn.sourceforge.net/rubyeclipse/?rev=2424&view=rev
Author: cawilliams
Date: 2007-05-03 10:26:48 -0700 (Thu, 03 May 2007)
Log Message:
-----------
Added Paths:
-----------
trunk/com.aptana.rdt/.classpath
trunk/com.aptana.rdt/.project
trunk/com.aptana.rdt/META-INF/
trunk/com.aptana.rdt/META-INF/MANIFEST.MF
trunk/com.aptana.rdt/build.properties
trunk/com.aptana.rdt/cheatsheets/
trunk/com.aptana.rdt/cheatsheets/HelloWorld.xml
trunk/com.aptana.rdt/icons/
trunk/com.aptana.rdt/icons/16_32.bmp
trunk/com.aptana.rdt/icons/16_8.bmp
trunk/com.aptana.rdt/icons/24_8.bmp
trunk/com.aptana.rdt/icons/32_32.bmp
trunk/com.aptana.rdt/icons/32_8.bmp
trunk/com.aptana.rdt/icons/48_32.bmp
trunk/com.aptana.rdt/icons/48_8.bmp
trunk/com.aptana.rdt/icons/alt_launcher.ico
trunk/com.aptana.rdt/icons/alt_launcher.xpm
trunk/com.aptana.rdt/icons/full/
trunk/com.aptana.rdt/icons/full/elcl16/
trunk/com.aptana.rdt/icons/full/elcl16/rails.gif
trunk/com.aptana.rdt/icons/full/elcl16/rubydoc.gif
trunk/com.aptana.rdt/icons/rubyred.ico
trunk/com.aptana.rdt/icons/rubyred.l.pm
trunk/com.aptana.rdt/icons/rubyred.m.pm
trunk/com.aptana.rdt/icons/rubyred.s.pm
trunk/com.aptana.rdt/icons/rubyred.t.pm
trunk/com.aptana.rdt/lib/
trunk/com.aptana.rdt/plugin.properties
trunk/com.aptana.rdt/plugin.xml
trunk/com.aptana.rdt/src/
trunk/com.aptana.rdt/src/com/
trunk/com.aptana.rdt/src/com/aptana/
trunk/com.aptana.rdt/src/com/aptana/rdt/
trunk/com.aptana.rdt/src/com/aptana/rdt/RubyRedPlugin.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/core/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/core/RubyRedPreferenceInitializer.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AccidentalBooleanAssignmentVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/AndOrUsedOnRighthandAssignment.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/CodeComplexityVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/ComparableInclusionVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/EnumerableInclusionVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LintOptions.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/LocalsMaskingMethodsVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/MisspelledConstructorVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/RubyRedLint.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SimilarVariableNameVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/SubclassCallsSuper.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnecessaryElseVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedParameterVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/parser/warnings/UnusedPrivateMethodVisitor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/RubyRedMessages.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/RubyRedMessages.properties
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/infoviews/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/infoviews/RailsAPIView.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/infoviews/RubyCoreAPIView.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/infoviews/RubyStdLibAPIView.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/preferences/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/preferences/PreferencesMessages.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/preferences/PreferencesMessages.properties
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/correction/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/correction/CorrectionProposal.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/correction/LocalCorrectionsSubProcessor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/correction/QuickFixProcessor.java
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/ruby/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/ruby/hover/
trunk/com.aptana.rdt/src/com/aptana/rdt/internal/ui/text/ruby/hover/CommentHoverProvider.java
trunk/com.aptana.rdt/src/com/aptana/rdt/ui/
trunk/com.aptana.rdt/src/com/aptana/rdt/ui/PreferenceConstants.java
Added: trunk/com.aptana.rdt/.classpath
===================================================================
--- trunk/com.aptana.rdt/.classpath (rev 0)
+++ trunk/com.aptana.rdt/.classpath 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <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="output" path="bin"/>
+</classpath>
Added: trunk/com.aptana.rdt/.project
===================================================================
--- trunk/com.aptana.rdt/.project (rev 0)
+++ trunk/com.aptana.rdt/.project 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>com.aptana.rdt</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>
Added: trunk/com.aptana.rdt/META-INF/MANIFEST.MF
===================================================================
--- trunk/com.aptana.rdt/META-INF/MANIFEST.MF (rev 0)
+++ trunk/com.aptana.rdt/META-INF/MANIFEST.MF 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Aptana RDT Extensions
+Bundle-SymbolicName: com.aptana.rdt;singleton:=true
+Bundle-Version: 0.0.0
+Bundle-ClassPath: lib/sourcetaplm.jar
+Bundle-Activator: com.aptana.rdt.RubyRedPlugin
+Eclipse-LazyStart: true
+Bundle-Vendor: Aptana, Inc.
+Export-Package: com.aptana.rdt,
+ com.aptana.rdt.internal.parser.warnings;x-friends:="com.aptana.rdt.tests",
+ com.aptana.rdt.internal.ui.preferences,
+ com.aptana.rdt.internal.ui.text.ruby.hover
+Require-Bundle: org.rubypeople.rdt.ui,
+ org.eclipse.ui.intro,
+ org.eclipse.jface.text,
+ org.eclipse.ui,
+ org.rubypeople.rdt.core,
+ org.eclipse.core.runtime,
+ org.jruby,
+ org.eclipse.core.resources
Added: trunk/com.aptana.rdt/build.properties
===================================================================
--- trunk/com.aptana.rdt/build.properties (rev 0)
+++ trunk/com.aptana.rdt/build.properties 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,12 @@
+bin.includes = plugin.xml,\
+ META-INF/,\
+ icons/,\
+ cheatsheets/,\
+ plugin.properties,\
+ plugin_customization.ini,\
+ public.key,\
+ lib/,\
+ .
+src.includes = src/
+source.. = src/
+output.. = bin/
Added: trunk/com.aptana.rdt/cheatsheets/HelloWorld.xml
===================================================================
--- trunk/com.aptana.rdt/cheatsheets/HelloWorld.xml (rev 0)
+++ trunk/com.aptana.rdt/cheatsheets/HelloWorld.xml 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<cheatsheet title="Create a Hello World application">
+ <intro href="/org.eclipse.platform.doc.user/reference/ref-cheatsheets.htm">
+ <description>
+ This cheat sheet shows you how to create the famous "Hello World"application and try it out. You will create a Ruby project and a Ruby class that will print "Hello world!" in the console when run.<br/><br/>If you need help at any step, click the (?) to the right. Let's getstarted!
+ </description>
+ </intro>
+ <item title="Open the Ruby perspective" dialog="false" skip="false" href="/org.eclipse.platform.doc.user/concepts/concepts-4.htm">
+ <description>
+ If you're not already in the Ruby perspective, in the main menu select <b>Window</b> > <b>Open Perspective</b> > <b>Ruby</b>or click on the "Click to Perform" link below.
+ </description>
+ <command serialization="org.eclipse.ui.perspectives.showPerspective(org.eclipse.ui.perspectives.showPerspective.perspectiveId=org.rubypeople.rdt.ui.PerspectiveRuby)" confirm="false">
+ </command>
+ </item>
+ <item title="Create a Ruby project" dialog="true" skip="false" href="/org.eclipse.jdt.doc.user/concepts/concepts-3.htm">
+ <description>
+ Before creating a class, we need a project to put it in. In the main toolbar, click on the <b>New Ruby Project</b> button, or click on the link below. Enter <b>HelloWorld</b> for the project name, then click <b>Finish</b>.
+ </description>
+ <command serialization="org.eclipse.ui.newWizard(newWizardId=org.rubypeople.rdt.ui.wizards.NewWizardProjectCreation)" confirm="false">
+ </command>
+ </item>
+ <item title="Create your HelloWorld script" dialog="false" skip="false">
+ <description>
+ The next step is to create a new ruby script. In the main menu select <b>File</b> > <b>New</b> > <b>File</b> (or the link below). Select the HelloWorld project as the folder, enter <b>helloworld.rb</b> for the file name, then click <b>Finish</b>.<br/><br/>The Ruby editor will automatically open showing your new script.
+ </description>
+ <command serialization="org.eclipse.ui.newWizard(newWizardId=org.eclipse.ui.wizards.new.file)" confirm="false">
+ </command>
+ </item>
+ <item title="Add a print statement" dialog="false" skip="false" href="/org.eclipse.jdt.doc.user/concepts/concepts-7.htm">
+ <description>
+ Now that you have your helloworld.rb script, add the following statement:<br/><br/>puts "Hello world!"<br/><br/>Then <b>save</b> your changes.
+ </description>
+ </item>
+ <item title="Run your Ruby application" dialog="false" skip="false" href="/org.eclipse.jdt.doc.user/gettingStarted/qs-12.htm">
+ <description>
+ To <b>run</b> your application, right-click on the helloworld.rb file in the Ruby Resources view and select <b>Run As</b> > <b>Ruby Application</b>. The <b>Console</b> view should appear at the bottom and display the "Hello, world!" output.<br/><br/>Congratulations! You have successfully created a Hello World application!
+ </description>
+ </item>
+</cheatsheet>
\ No newline at end of file
Added: trunk/com.aptana.rdt/icons/16_32.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/16_32.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/16_8.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/16_8.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/24_8.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/24_8.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/32_32.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/32_32.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/32_8.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/32_8.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/48_32.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/48_32.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/48_8.bmp
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/48_8.bmp
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/alt_launcher.ico
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/alt_launcher.ico
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/alt_launcher.xpm
===================================================================
--- trunk/com.aptana.rdt/icons/alt_launcher.xpm (rev 0)
+++ trunk/com.aptana.rdt/icons/alt_launcher.xpm 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,342 @@
+/* XPM */
+static char *alt_launcher[] = {
+/* width height ncolors chars_per_pixel */
+"128 128 208 2",
+/* colors */
+"AA c #FFFFFFFFFFFF",
+"BA c #FFFFF7F7ADAD",
+"CA c #FFFFEFEFB5B5",
+"DA c #FFFFEFEF9494",
+"EA c #FFFFE7E76B6B",
+"FA c #FFFFE7E75A5A",
+"GA c #FFFFDEDE9C9C",
+"HA c #FFFFDEDE7B7B",
+"IA c #FFFFDEDE4242",
+"JA c #FFFFDEDE3131",
+"KA c #FFFFCECE4A4A",
+"LA c #FFFFB5B56B6B",
+"MA c #FFFFB5B54242",
+"NA c #FFFF94945A5A",
+"OA c #FFFF8C8C6B6B",
+"PA c #FFFF73737B7B",
+"AB c #FFFF73735A5A",
+"BB c #FFFF63636B6B",
+"CB c #FFFF5A5A5252",
+"DB c #F7F7EFEFEFEF",
+"EB c #F7F7DEDEDEDE",
+"FB c #F7F7DEDE2121",
+"GB c #F7F7CECECECE",
+"HB c #F7F7CECE2121",
+"IB c #F7F7B5B5B5B5",
+"JB c #F7F79C9C3131",
+"KB c #F7F78C8C3131",
+"LB c #F7F773736B6B",
+"MB c #F7F76B6B3939",
+"NB c #F7F75A5A6363",
+"OB c #F7F75A5A4242",
+"PB c #F7F74A4A5252",
+"AC c #F7F74A4A4242",
+"BC c #F7F739393939",
+"CC c #EFEFD6D61818",
+"DC c #EFEFB5B5B5B5",
+"EC c #EFEFB5B52121",
+"FC c #EFEF84848484",
+"GC c #EFEF7B7B3131",
+"HC c #EFEF73737373",
+"IC c #E7E7E7E7EFEF",
+"JC c #E7E7DEDEDEDE",
+"KC c #E7E7CECEC6C6",
+"LC c #E7E7C6C61818",
+"MC c #E7E7BDBDC6C6",
+"NC c #E7E7B5B51010",
+"OC c #E7E7A5A5A5A5",
+"PC c #E7E79C9C1818",
+"AD c #E7E794949494",
+"BD c #E7E78C8C2929",
+"CD c #E7E763636363",
+"DD c #E7E752525A5A",
+"ED c #E7E752524242",
+"FD c #E7E752523131",
+"GD c #E7E742424A4A",
+"HD c #E7E742423131",
+"ID c #E7E739394242",
+"JD c #E7E739393131",
+"KD c #E7E729293131",
+"LD c #DEDEDEDECECE",
+"MD c #DEDEBDBDB5B5",
+"ND c #DEDEBDBD1010",
+"OD c #DEDEADAD1010",
+"PD c #DEDEA5A5ADAD",
+"AE c #DEDE9C9CA5A5",
+"BE c #DEDE63636B6B",
+"CE c #DEDE29292929",
+"DE c #D6D6ADAD9494",
+"EE c #D6D6ADAD2121",
+"FE c #D6D68C8C9494",
+"GE c #D6D684841818",
+"HE c #D6D65A5A5A5A",
+"IE c #D6D64A4A5252",
+"JE c #D6D64A4A4242",
+"KE c #D6D64A4A3131",
+"LE c #D6D639394242",
+"ME c #D6D639393939",
+"NE c #D6D639392929",
+"OE c #CECECECED6D6",
+"PE c #CECEC6C6C6C6",
+"AF c #CECEADADB5B5",
+"BF c #CECEADAD1010",
+"CF c #CECEA5A52121",
+"DF c #CECE9C9C1010",
+"EF c #CECE84848484",
+"FF c #CECE7B7B7B7B",
+"GF c #CECE6B6B6B6B",
+"HF c #CECE21212929",
+"IF c #C6C6BDBDADAD",
+"JF c #C6C6B5B59C9C",
+"KF c #C6C6A5A5A5A5",
+"LF c #C6C69C9CA5A5",
+"MF c #C6C69C9C9494",
+"NF c #C6C69C9C7B7B",
+"OF c #C6C69C9C2929",
+"PF c #C6C652522929",
+"AG c #C6C631312929",
+"BG c #BDBDBDBDC6C6",
+"CG c #BDBDADADA5A5",
+"DG c #BDBD9C9C4242",
+"EG c #BDBD9C9C1010",
+"FG c #BDBD73732121",
+"GG c #BDBD52523939",
+"HG c #BDBD4A4A5252",
+"IG c #BDBD42424A4A",
+"JG c #BDBD42423939",
+"KG c #BDBD31313939",
+"LG c #BDBD29293131",
+"MG c #BDBD29292121",
+"NG c #B5B5BDBDBDBD",
+"OG c #B5B5A5A58484",
+"PG c #B5B59C9C6B6B",
+"AH c #B5B594949494",
+"BH c #B5B594945252",
+"CH c #B5B594943939",
+"DH c #B5B58C8C1818",
+"EH c #B5B584848C8C",
+"FH c #B5B57B7B7B7B",
+"GH c #B5B563636363",
+"HH c #B5B531312929",
+"IH c #B5B518182121",
+"JH c #ADADADADB5B5",
+"KH c #ADADADADA5A5",
+"LH c #ADAD9C9C7373",
+"MH c #ADAD7B7B8484",
+"NH c #ADAD73737373",
+"OH c #ADAD63636B6B",
+"PH c #ADAD4A4A4A4A",
+"AI c #ADAD39393939",
+"BI c #ADAD29293131",
+"CI c #ADAD21212121",
+"DI c #A5A58C8C6363",
+"EI c #A5A58C8C5A5A",
+"FI c #A5A584849C9C",
+"GI c #A5A584841818",
+"HI c #A5A57B7B3939",
+"II c #A5A57B7B2929",
+"JI c #A5A55A5A6363",
+"KI c #A5A552525A5A",
+"LI c #9C9CA5A5A5A5",
+"MI c #9C9C9C9CADAD",
+"NI c #9C9C94949494",
+"OI c #9C9C73737373",
+"PI c #9C9C73735252",
+"AJ c #9C9C63636B6B",
+"BJ c #9C9C4A4A4A4A",
+"CJ c #9C9C39393939",
+"DJ c #9C9C31312929",
+"EJ c #949429293939",
+"FJ c #949421212121",
+"GJ c #8C8C42425252",
+"HJ c #8C8C39393939",
+"IJ c #8C8C29292929",
+"JJ c #84848C8C8C8C",
+"KJ c #84847B7B7B7B",
+"LJ c #84845A5A5A5A",
+"MJ c #848439394A4A",
+"NJ c #848429293131",
+"OJ c #848418181818",
+"PJ c #7B7B84848484",
+"AK c #7B7B84847B7B",
+"BK c #7B7B7B7B7B7B",
+"CK c #7B7B6B6B8484",
+"DK c #7B7B39394A4A",
+"EK c #7B7B29292929",
+"FK c #73737B7B8C8C",
+"GK c #73735A5A7373",
+"HK c #737339393939",
+"IK c #737329294A4A",
+"JK c #6B6B73737373",
+"KK c #6B6B5A5A7373",
+"LK c #6B6B4A4A5252",
+"MK c #6B6B18181818",
+"NK c #636363637B7B",
+"OK c #636363636B6B",
+"PK c #63635A5A5A5A",
+"AL c #636339393939",
+"BL c #636329292929",
+"CL c #5A5A52526B6B",
+"DL c #5A5A21212121",
+"EL c #5A5A10101010",
+"FL c #52525A5A5A5A",
+"GL c #52524A4A6363",
+"HL c #525242425252",
+"IL c #525242424A4A",
+"JL c #525229294242",
+"KL c #4A4A52524A4A",
+"LL c #4A4A42423939",
+"ML c #4A4A21212121",
+"NL c #4A4A10101010",
+"OL c #424242425252",
+"PL c #424231314242",
+"AM c #393942424242",
+"BM c #393939393939",
+"CM c #393929292929",
+"DM c #393910101818",
+"EM c #313139395252",
+"FM c #313139394242",
+"GM c #313108081010",
+"HM c #292921212929",
+"IM c #212129293939",
+"JM c #212121211818",
+"KM c #181821211818",
+"LM c #181818182929",
+"MM c #181810101818",
+"NM c #181810100808",
+"OM c #080810101818",
+"PM c #000000000000",
+/* pixels */
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICJKOKKHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANGNIJCAAAAAAAAICBMMMLMMMFLICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOEBMPMLMOMNIAAAAAAPJOMOMFLMMMMFLICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICAMOMMMPMPMHMICAAAANKPMNMKMPMKMPMILAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPJPMOMPMKMMMKMNGAAAAJJOMPMNMMMPMKMMMJKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICHMLMPMKMPMMMPMNIAAAANGPMNMMMNMKMMMPMJMNGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALIOMPMMMPMKMPMKMFLAAAALDOMPMOMMMJMMMMMMMKLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFLMMKMPMMMNMMMPMBMICAAICPMMMPMHMGLIMKMPMDMNGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICOMOMNMKMOMNMPMMMMMPEAAJCOMPMKMLMBGCLOMOMKMOKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANGOMMMMMMMKMOMKMPMMMAKAAICPMOMNMOMOKCLMMKMPMBMICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANIOMMMKMHMBMKMMMPMKMBMAAPEOMPMOMMMHMHMOMPMKMMMNGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKKMPMMMBMKLHMNMKMPMMMNGPEOMKMMMPMOMKMNMMMPMNMJJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLOMKMMMHMPJFMMMOMNMMMFLNGPMMMPMJMMMPMKMOMMMNMFLAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFLOMMMPMBMJHPJHMPMMMPMHMJKMMNMJMMMPMKMPMNMNMMMCMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFLPMMMKMLMKHPEIMOMPMKMMMLLJMDMDLDLMKEKEKOJBLMKDLAHICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFLKMPMMMLMAMFKIMMMKMPMNMHMHKDJCIFJCICICICICIHHCIAIAIJIDEICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACLOMMMPMJMHMAMHMMMPMKMPMJMALDJHHMGAIMGMGAIMGCIAIMGCIAIBIPHFHJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJKMMPMKMMMHMFLLLMMKMPMMMKMMLCJLGKGMGHFKGHFKGKGMGMGKGMGKGLGBIAIFHJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANIOMPMMMMMHMNIOKKMMMMMPMMMMLAIKGMEMEKGAGMEHFAGMELGAGLGMGKGHHKGAIPHMFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANGPMMMKMPMMMBKKHIMKMPMMMPMEKHHKGMEMEMEMEAGMEMEHFMEHFMEMEMGMEHHKGMGAIJIJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOEKMPMMMKMMMFLLDHMMMMMNMNLHHMEMEMELEMEIDMEMEMEMEMEMEMEMGLELGMEHHKGKGHHPHMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICPIDMMMPMNMMMCMPEBMOMDMNLAIMEMEMELELEGDMEGDLEJDMEMEMEMEMEMEKEHFMEHHMEKGCIPHKFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCBJEJELMMNMOMNMJMKJBMMLEKJEMELEJEGDGDHDGDGDHDGDGDMEJDLEMEMEMEMEMEMEMEHHMEKGHHPHMFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCEJBIMGCIEKDMNMDMDLHKKIHEDDHEGDHEGDGDGDGDGDHDGDGDHDGDIDJEIDJDMEMEMEMEMEMEHHMEHHKGBIMFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCBJLGLGLGLGMGMEKGKEIECDLBLBCDDDDDOBPBJEGDGDGDGDGDGDGDGDGDJDGDMEIDMEJDMEMEMEMEAGMEHHKGAIKFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOEBJCILGMELGMEMEHFMEJEDDCDHCHCNBCBEDPBGDGDGDGDGDGDGDGDGDGDHDGDGDHDGDJDLEJDMEMEMEMEMEMEMELGPHKCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICKILGLGKGHFMEMEMELEIDGDDDCBDDDDDDPBPBJEEDGDEDGDEDJEGDGDHDGDGDHDGDLEHDGDHDLEJDMEMEMEMEKGMEKGLGPHICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANHLGBIMEMEMEMEMELEHDGDGDGDGDDDPBACHEEDPBLEDJEJAILEJEKEGDGDGDJEPBHDGDGDGDIDIDJEIDJDMEMEMEKGMEKGJGHGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAILGMELGMEMEMEIDJDGDGDGDOBPBGDCBPBPBIEIGMKBLNLDMDMNLNJHHJEJEGDJEIDGDHDGDHDGDIDHDLEMEMEMEMEMEKGKGJGAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICBJLGKGLGKDMEMEIDMEGDGDGDACGDGDCBJEPBJEMEMKPHJEJEAIDLDMDMDMGMIJGDGDGDGDGDHDGDGDIDJEHDGDJDMEMEAGMEMEAIKGJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHAIMGMEMEMEMEMEIDGDGDGDHDGDGDACPBPBHELENLAIGDIEPBIEEDIEAICJFJCIJEGDGDHDGDGDGDHDGDIDIDMEGDMEMEMEMEMEKGJGOHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCPHLGLGMEHFMEMEJDGDGDHDGDACGDACDDGDIEMEELPHGDHEPBHEGDHEIEJEJEHEJEGDEDGDPBACGDHDGDGDGDHDGDMEIDJDMEMEMEMEKGAIPDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHBIKGMEHFLEMEIDIDHDGDGDACGDGDEDACDDJEDLBIIEDDDDDDGDHEPBHEIEJEJEPBIEGDGDGDGDGDGDGDHDGDIDHDGDKEIDMEKEMEAGKEKGKIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABJCIMEHFMEMEIDLEHDGDGDGDGDGDGDPBPBLEOJBIIEDDEDDDEDHEHEKIBJDKDKGJKIHEJEJEEDGDACGDGDPBHDGDGDJDIDKEIDMEMEKEKGKGGGNFIFKCLDICICICICDBICICAAICAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALFBIKGMGMEMEMEJDIDGDIDGDACGDOBGDGDJEIJAIGDDDEDNBHEHGMJILJLOLKKCLGLOLLKKIHEGDGDGDHDACIDGDGDHDGDIDIDGDMEMELEKEPFFGOFDGEIDGDGEIBHDIEIPGEIEIBHEIPGIFAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJLGKGHFMEKDJDLEGDJDGDACGDPBIDOBGDBIKGGDDDDDPBBEBJHLKKLFOEDBICAAICBGCMILCJJEGDGDGDGDGDGDHDIDGDHDGDJEHDLEKEPFDFBFDFDHDFDFFGOFCHFGOFFGOFOFDFEECHEIICAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBCJLGHFMEHFKELEJDIDGDGDGDGDACPBPBLELEDDEDDDDDBEDKFIJCAAICAAAAAAICPEEMLMDMMLJEGDEDACGDGDACGDHDGDGDHDIDJEHDFDEEODODBFODDFBFBFDFBFBFEGBFPCNDEEEECFDGIFAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDLGHHLGMEMELEJDLEGDGDHDGDACGDGDPBACDDACNBOBDDMJAFAAAAAAAAAAAAICAAFKIMDMMMDMAIEDGDGDGDACGDHDGDGDHDHDGDLEKEJBECEEODEEODODCFODBFBFPCBFECNDECNDECCFCHOGAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFIMGHFMEHFMEMELEJDIDGDPBGDACACPBPBDDCBDDPBDDGDEKJHAAAAAAAAAAAAAAAAMILMKMDMNLJGPBGDEDACGDACGDGDHDGDGDHDGDGCCFLCNCECNDECECNDEEODEENDECHBHBCFLCNDCFOFLHAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKIBIMEMGMEKDMEJDIDGDACGDGDACDDGDPBCBPBCBDDCBDDLEIKCKPEAAAAAAAAAAAAICCKHMDMEKJEGDDDACGDACGDACHDACGDHDJEFDEECCECECHBECECNDEENDECNDHBFBCFHBLCLCCFBFOFDIAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAILGLGHFMEMEMEIDJDGDGDACACGDACCBPBPBDDCBCBPBDDDDJEHJHLKKMIBGICAAOEOEICPLBLHFHEGDACPBGDOBGDACGDGDACGDHDJBECHBNDECCFLCHBECNDECNCJAFBFBFBFBLCNDNDOFGIPGAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICBIMGHFMEKDMEIDJDIDIDHDGDGDPBACPBPBDDCBPBCBNBABDDNBIELEBJDKLKGKGKGLDKDKBJMEDDPBEDPBPBACPBACGDACHDGDFDEDECHBECHBCFHBHBNDLCECHBFBHBJAFBFBLCLCCFBFBFDHDIAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDBILGMEHFMEMEMEJDIDGDACACGDACPBDDOBCBNBNBCBNBNBABNBBBHEPBBEJEIELEIEIENBIEPBDDCBCBPBPBGDGDACACGDACGDGDKBJAECHBECHBHBECHBHBHBHBJAFBFBJACFFBLCLCBFDFGIOGAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKFAIHFMGMEMEKDJDIDIDACGDIDACGDCBPBPBNBCBCBNBNBNBCBBBNBNBCDNBNBNBNBBBDDNBCBDDCBPBNBDDGDPBACACGDACGDEDFDJBHBCFHBECFBCFHBECHBFBJAJAJAFBFBFBLCECNDBFDFGIPEAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMFLGLGHFMEKDMEMEJDIDIDACGDPBPBACCBPBCBNBNBNBBBABNBBBBBBBBBBBBBCDBBCDABNBNBCBCBDDCBPBCBGDCBGDACGDACHDGCJAECFBECFBECFBHBJAJAJAJAJAFBJACFCCFBNDCFNDEGHIICAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHLGMGMECEMEMEIDJDGDGDIDACGDPBPBPBCBNBPBNBABBBNBBBABBBBBABBBBBBBABBBNBBBNBNBNBCBPBCBPBCBACPBACACGDFDNAHBECJAFBECJAJAIAEAEAJAJAJAFBFBFBFBLCCFNDBFDHEIAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFHIHHFMEAGMEJDJDIDJDACGDACACPBPBCBPBCBNBNBNBBBBBBBBBBBLBBBLBBBBBBBBBBBBBBBABNBNBCBPBCBPBPBACPBACACEDHBJAHBECJAJAJAIALDBAFAFBFBFBJACFFBLCLCLCBFEGGILDAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMHMGKGHFKDMEKDMEIDIDIDACGDPBACPBPBCBNBNBNBABBBBBLBBBLBBBPALBPALBPALBLBBBBBNBCBNBCBNBCBPBACPBACGDCBKBJAECJAJAJAJAFAEAFAFAFBFBJAFBFBFBFBLCECNDEEEGNFAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHMGMGMEHFMEMEJDIDJDIDACACGDPBCBPBNBCBNBCBNBBBLBBBLBPABBLBPALBPALBBBPALBBBBBBBCBNBCBPBCBPBCBACACABMAMAJAJAKAFADACADAJAFBJAJAFBJACFFBCFCCNDBFDFCHIFAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHBIHFHFMEKDJDJDIDIDIDACIDACACPBPBCBNBCBBBBBBBBBLBLBBBPAPAPAPALBPAPABBLBLBBBBBBBNBNBCBCBPBACPBOBEDHAKAFAKAHADADAEAJAJAJAJAFBFBFBFBFBCCECNDECCFOFPGKCAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKFBILGHFMEKDMEJDIDIDACIDPBACPBACCBPBCBNBBBBBBBLBBBPALBLBPALBPAPALBPAPAPALBBBBBBBCBNBCBPBPBPBACPBNAGACAGADAEAEAIAJAJAJAFBJAHBJACFFBHBHBCFNDBFEEOFDGPIAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCBIMGMEHFMEKDIDJDJDIDIDACPBACPBPBCBNBNBCBABLBBBLBLBBBPALBPALBPAPALBPALBPALBBBBBNBCBNBCBPBPBACACOACACAHAFAIAKAJAJAJAECJAHBJAHBFBHBFBCFFBHBECECECGIEIAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICEJHFHFMECEMEKDIDIDJDACIDACPBPBCBPBCBNBNBNBBBBBBBPALBPABBPAPALBPALBPAPALBBBLBBBBBNBCBNBPBACPBACACNAIAKAJAECJAECMAJAECJAJAHBJAJAFBJAFBHBCFCCNDBFGIJFAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABJMGAGHFMEKDMEJDIDACIDACACPBACPBPBNBCBCBBBBBBBLBBBPABBPALBPAPALBPALBPABBPABBBBBBCBNBPBPBPBACACPBGCMAJAMALAHAKAFAKAIAJAJAJAJAFBJAHBFBFBCCHBBFEGHIAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANHLGHFAGKDMEKDIDJDIDACIDACACPBPBCBPBCBNBCBBBBBBBLBBBLBPAPALBPAPAPALBPALBBBLBABCBNBCBCBPBACPBACACCBLALAEAIAKAGAGABAFAJAJAJAFBJAFBCFFBNDNDBFOFGIPEICAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDBIHFMEHFKDMEJDIDKDIDACACPBACPBPBCBCBNBNBNBABLBBBBBPALBLBPABBPALBPALBLBBBBBNBNBNBNBPBPBPBACACACDDABHAGACACABAEAIAJAJAFBJAFBCFHBFBNDBFCFEGHILHAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICCJMGHFMEKDJDKDIDACKDACACACPBACPBPBCBCBNBNBNBBBBBLBBBBBPALBPALBPABBPABBLBBBBBABCBNBCBPBACPBACACCBOAGACACADAFAJAJAHBHBHBCFFBCCNDBFEEODOFHIOGAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEHLGHFCEMEKDIDKDIDACIDACACACACPBPBNBCBNBCBNBCBABBBBBPABBLBBBLBBBLBLBBBBBBBCBNBNBCBPBPBPBACACPBCBHCLALAKAJAHBJAFBCFJAHBFBNDECODEEBFFGHIIFAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCCIHFMECEMEJDJDIDIDACACACACPBACPBPBPBCBNBNBBBNBBBABBBBBBBLBPABBBBBBBBABCBBBCBNBNBPBPBACPBACACPBPBCBMAJAECJAECJAHBCFECNDECBFBFOFFGPGOEAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGHKGHFHFKDKDIDBCKDACIDACACACACACPBCBNBCBNBCBNBABNBBBLBBBBBNBABBBBBABNBNBCBNBCBPBPBACPBACACACPBCBPBHDJBJAECHBNDECHBNDODBFDFOFHIIFAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCLIKHICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCCIMEKDMEKDKDIDIDBCACIDACACPBACPBPBPBCBCBNBNBNBBBCBBBBBBBBBBBABCBNBCBNBNBPBPBCBPBPBACACACACACACACGDHDKBECHBECNDEEECNDEEFGOGDBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAICJKOMDMBMFLNGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMFMGHFCEMEKDKDACKDACACACACACPBACPBPBPBNBCBNBNBCBBBNBCBABBBNBNBNBCBNBCBCBCBPBPBACACPBACACACACIDACHDACMEMBEEECECNCODEEEICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAICFLPMOMPMHMBMILKHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHGHFMECEMEKDKDACKDACACACACACPBACPBPBPBCBCBCBNBCBNBNBCBCBCBNBNBCBNBCBPBPBCBPBPBACACACACIDACACIDACJDJDMEJDPFGEBDIIADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAFLKMPMKMPMKMHMLLILNIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCKGHFKDKDKDIDKDACACACACPBACACPBACPBPBNBCBPBCBNBCBPBNBCBNBPBCBNBCBPBPBPBPBPBACACACACIDACACKDIDIDIDJDJDMENEAGKGKCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAABKJMPMMMPMKMPMJMBMILKLNIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPDHFHFMEKDKDIDKDACACACACACACACPBACPBPBPBCBPBPBCBCBPBNBPBCBCBPBNBPBCBPBACACPBACACACACIDKDACJDIDHDIDMECEMEMGMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAANGHMOMMMPMMMPMMMMMHMLLILFLNIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMFHFKDKDIDKDACKDBCACACACACPBACPBACPBPBPBCBPBNBPBPBCBPBNBPBCBPBPBACPBACPBACACACACIDBCACIDIDJDJDMEMEHFMGPHICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAICKLKMNMPMOMPMKMPMKMKMHMKLILKLKHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEFHFKDKDLEKDACKDACACACACACPBACPBACPBPBPBCBPBCBPBPBCBPBPBPBPBPBPBACPBACACACACIDACIDKDACKDIDJDMEKDMECIMFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAALIHMMMPMMMPMNMPMOMNMKMHMBMAMKLILMIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEFLGKDKDKDKDACKDBCACACACACPBACPBACPBPBPBPBPBCBPBPBPBCBPBACPBACPBACACPBACACACBCACIDKDIDJDMEKDMEMGIGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAICLLKMOMPMPMKMPMMMPMMMKMKMBMLLILAMKLJJDBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFEIHKDKDKDKDIDKDACACACACACACPBPBACPBACPBPBPBPBPBPBPBCBPBACPBACPBPBACACACIDACIDACIDKDIDMEMEHFKGEFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAALIHMMMNMMMKMPMMMPMNMKMPMDMKMBMLLFLILILFLNGAAAAAAAAAAAAAAAAAAAAAADBICOEKCMDPDKFKFKFAFMDMCJCAAAAAAAADCLGHFKDKDKDIDIDBCACACACACACACACPBPBPBPBCBCBNBCBCBPBPBNBPBPBPBACPBPBACACIDACIDJDIDMEMEHFMECIMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAKLKMOMPMPMPMMMPMKMPMPMJMKMJMHMBMLLKLILILLKLJCGJCICKCMDLFEHAJKIHJCJCJAIEJCJHHBIAIBIAICJAIBICJPHHGOHOHPHHFHFKDKDKDIDIDACACACPBPBPBPBPBCBNBCBNBNBBBBBNBBBNBCBNBNBPBPBPBACPBIDACIDKDIDJDKDMEHFKGHHCGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAPEHMKMNMKMMMKMPMPMNMPMMMMMMMJMJMHMBMLLALHKEKDJHJCJCJEJNJCJFJAIFJAIAICIAICIHHBIKGCIKGBILGCIAILGCIAIBIBICIIHHFHFKDIDBCIDACACPBACPBPBPBNBNBNBBBBBPABBLBBBBBBBPANBNBNBPBPBPBACACIDACIDKDLEMECEMEHFBINHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAJKHMOMNMPMPMMMPMKMPMKMNMNMMMKMJMCMDLEKDJDJCJCJFJAICIAICIBIAICIAICICIKGMGKGMGLGMGKGHHLGLGKGMGBILGBIMGBILGLGIHKDHFLEKDIDIDPBACPBPBPBNBNBNBBBBBBBBBPALBLBBBLBNBBBNBPBPBPBPBACIDACIDIDIDJDKDMELGKGHHBJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAABMKMNMOMNMKMPMJMDMDLDLNLMLMLNLMKEKDJFJEJHHEJCIAICIBICIAICICIAICILGKGMGLGLGMGKGLGMGKGHFMGLGLGHFLGLGLGLGMGLGHFHFLEKDIDIDPBIDPBPBPBPBNBCBBBBBBBLBBBLBBBPALBBBBBBBNBNBNBPBPBIDPBIDIDIDJDLELEHFMEHHKGAICGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAANGMMOMOMNMPMDMMLFJHHHHFJHHCIDJAICICICIAICIBIMGAICIBICIKGCIKGMGMGLGLGLGLGLGMGHFKGHFMEMGLGHFHFLGMEMGHFLGLGHFHFMEHFHFLEKDIDIDIDIDPBPBPBPBNBCBABNBNBBBBBBBBBBBBBABNBCBPBPBPBPBPBIDPBIDIDLEIDMELEMEMEKGBIPHMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAPJKMMMNMPMDMDLHHKGKGKGHHLGHHLGMGBIMGAICIKGCICIBIMGBILGMGLGMGLGKGHFKGKGHFMGMEKGHFKGLGHFHFLGMEHFKGHFHFHHHFLGMEHFHFMEKDLEKDIDIDIDIDACGDPBACPBPBCBPBCBCBCBCBCBCBPBPBNBPBPBPBACPBIDIDIDIDIDMEMEMEMEHFHHKGBIBJKFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAILOMPMOMNMBLKGKGKEKGAGMELGLGMGLGMGBIMGLGMGLGLGMGLGMGLGLGLGLGKGHFHHHFHHMELGMGHFMEMGHFMEKGHFHFMEHFMELGHFMEHFHFLEMEHFLEKDLEKDLEIDIDIDGDGDGDGDACIDPBPBPBPBGDPBPBPBACPBPBACIDIDIDACIDIDJDIDJDMEMEHFJEHFKGKGAIPHLFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAICHMKMMMNMMKHHKGKEKGMEMELGMGKGLGLGLGMGLGMGLGLGMGLGLGLGMGKGHFKGHFKGMGMEHFLGHFHFMELGHFMELGHFMEMEHFMEMGMEMEHFMEMEMEHFMEKDMEKDLEIDJDIDIDIDIDACGDIDPBPBACGDGDPBACPBACPBACPBIDPBIDACIDIDJDLEJDMEMEKDMEMEMEKGMELGCJJGKFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAKHKMMMPMDLHHKGAGMEMELGMGHFKGMGLGLGLGLGMGLGLGMGLGHFMGHFKGHFHHHFHHHFMELGMEMGMELGHFMEHFHFMEHFHFMEHFMEHFHFMEMEHFHFMEMEMEMEKDLEMEIDIDJDIDGDIDIDGDGDIDGDGDACPBGDPBIDGDACIDGDACIDACIDIDIDIDJDIDJDMEMEMEHFMEAGKGKGKGAIBJKFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAJJMLPMCMFJKGAGMEKGMEHFLGKGLGLGLGMGLGMGLGLGMGLGHFKGHFKGHFHHHFMEHFMEHFHFKGHFMEHFMEHFMEMEHFMEMEHFMEMEHFMEKDHFMEMEMEKDMEKDLEMEIDJDLEIDGDIDACGDJDACGDACGDPBIDACIDACACIDIDACIDACIDACIDHDIDIDJDLEJDMEMEMEAGMEMEMEHHAIKGBJMDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAPKNLNMOJHHKGMEMEMELGHHMEMGMELGHFKGLGLGLGHFLGHFKGAGMEMGMEHFKGMGMEMGMEMEHFMELGMEHFMEHFMEHFMEHFMEHFHFLEHFMEMEHFMEKDMEKDLEMEJDLEIDIDGDJDGDGDGDACIDACIDACIDPBGDPBGDACPBGDACIDIDACIDIDACIDGDJDIDMEKDMEMEMEHFKGMEKGHHKGAIBJJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAALNLMLCILGAGMEHFMEMGMELGKEHFMEKEHFMEHFMGKGHFHHKGHFLGHFLGMGMEHFLGHFHFLGMELGMEHFMEHFMEHFMEHFMEHFMELEHFMEMEHFLEHFMEMELEKDMELEJDLEIDJDGDGDIDACIDACGDACGDACGDACIDPBIDIDACIDPBACIDGDGDIDIDJDIDJDIDJDMEKDMEMEAGMEAGMEKGAIPHBJICAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAICBLMKIJMGKGMEMGLEMELGHFMELEMEMELEMEMEHFMEMGLGHFHHMEMGLGHFKGMGMEHFMELGHFHFMELGMELGMEKGMEKGMELGLEKGMEKGHFMELGMEHFLEHFMEHFLEKDLEIDJEIDGDGDGDGDGDGDACPBIDPBACIDPBACACIDPBIDGDACIDACIDGDHDGDJDIDMEIDJDMEMEMEKDKGMEHHMEHHAIAIOHAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAPEIJIJCIKGAGHFMEMEHFMGMEMEMEMELEMELEHFJEHFMEHFMEHFMGKGHFKGLGHFLGLGMGLGMEKGLGLGMGMELGLGMGMEKGHFLGMEMGMEMEHFMEHFLEHFLEHFMEHFKDMELEMEIDGDHDGDGDACACGDGDPBIDPBACGDPBIDPBIDACACIDACIDGDBCGDIDIDGDIDJDLELEKDMEMEAGMEMEHHKGKGAIBJAHAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAACGIJIHCIKGMEKGAGMEMEHFMEHFMEJDLEMEJDJELEMEMEMEMEMEMEKDMEMEMEMEHFMEHFMEHFMEMEHFMEHFMEAGKDHFMEMEHFMEKDHFMEMEKDMEMEMEMEJDLEMEMEKDMEKDMEJDIDGDGDGDGDACACGDACACPBACGDPBACPBIDACGDACACIDGDBCHDGDJDGDJDIDJDLEMEMEKDMEMEMEKGHHKGAIBJKCAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAHIJCIKGMGMEMEHFMEMEMEHFLEMELEJDIDLEIDJDIDLEJDMEJDMEMEMEMEMEMELEMELEMEMEMEMEMEMEMEMEMELEMEMEMEJDMELEJDMEJDMEJDJDIDJDLEJDIDIDLEJDMELEKDMEJDIDACGDPBIDACPBPBIDACPBACIDACPBIDPBIDIDACGDIDACJDGDJDIDJDLEJDMEKDMEMEHFHHMEKGKGAICJLJICAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAEHFJCIHHHFKGAGMEMEHFLEMEAGJDMEIDMEHDIDIDIDGDIDIDJEIDIDIDIDJDIDGDJDIDIDIDJDIDIDIDGDJDIDJDIDJDIDIDJDIDIDIDIDIDIDIDIDIDIDIDJDIDJDIDIDJDLEJDLEJDIDGDGDPBPBGDPBPBPBACPBPBACPBACGDPBACIDACGDIDACIDIDGDIDJDLEJDLEMEMEMEMEKGAGKGKGAICJAHAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAOIFJHHHFKGHFMEKDMEMEMEHFMEKDJDMEIDIDJEJDGDIDHDGDIDGDGDHDGDGDGDHDGDGDGDGDGDGDHDGDGDIDACGDHDGDGDGDIDGDIDACIDIDACIDIDACIDACGDIDIDIDIDIDIDIDIDJDIDJDGDACGDACPBPBACPBPBACPBGDPBACACIDACIDACACIDHDGDIDIDIDJDIDLEKDMEMEHFAGMEJGKGAICJBJJCAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAJICIBIHHHFMEAGMEHFLEMEMEHFMEMEJDIDJDIDGDJDGDGDHDGDGDACGDGDGDACGDACGDACACGDACPBACACGDGDACPBACIDACACACPBIDACPBIDPBACIDACIDACACIDACIDIDIDIDJDIDJDIDIDGDPBPBGDPBPBGDACPBACPBACPBACPBIDPBIDACIDACIDGDJDIDIDMEJDLEMEMEMEMEHFKGKGKGAIHJOIAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAKIEJMGHFHHHFMEHFMEMEMEMEJEHFKDIDMEGDJDGDGDHDGDGDGDACGDGDOBGDPBACPBOBGDPBACPBACPBGDPBACPBACIDPBACPBPBACPBPBACPBACPBPBPBPBPBACPBACGDACACIDACIDIDIDJDIDACGDCBACPBCBPBPBPBACPBPBIDACPBACACIDPBIDIDACGDIDIDIDJDLEKDMEMEHFMEMEKGHHAICJBJJCAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAALJIHCIHHHFMEAGMEMEJDMEMEKDMEMEKDMEJDIDHDGDGDACGDACGDACGDACACPBPBGDACACPBPBPBPBGDACACPBPBPBPBACPBPBPBPBCBPBPBPBPBPBPBPBPBPBPBACPBACPBACACIDACIDACIDIDIDPBPBPBPBPBCBPBPBPBPBPBPBPBACIDPBACACIDACIDIDGDJDIDIDJDLEKDMEMEAGMEHHKGBIAIHJOIAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAABJFJMGMGMEHFMEKDMEKDMEKDMEMEKDMELEJDIDIDGDIDHDGDJDGDIDGDIDPBJDGDGDPBACGDGDGDGDACGDPBPBACPBPBCBPBCBPBNBPBNBCBCBNBCBCBCBCBPBPBPBPBPBACPBPBACPBACIDIDACIDACPBCBPBCBPBPBPBCBPBPBPBACPBPBPBIDACPBIDIDACJDIDJDLEIDMEMEKDMEMEMGMEKGKGBIHJBJICAAAAAAAAAAAAAAAA",
+"AAAAAAAAAABJFJLGMGLGMEHFMEHFMEMELEMEHFMEMEJDLEJDGDJDGDACJDACGDACACIDGDACGDACIDPBACACACACPBACPBPBPBPBCBNBCBNBCBCBNBCBNBNBCBNBNBNBNBNBNBCBNBPBPBPBPBPBACPBACACIDIDACPBCBPBPBCBPBCBPBPBCBPBPBPBACACPBPBIDACACIDIDGDIDJDIDJDLEMEKDMEHFMEKGHHAICIHKMDAAAAAAAAAAAAAAAA",
+"AAAAAAAAAADKCIMGHFHFMGMEKDMEMELEJDMEMEMEKDMEJDGDJDHDGDIDGDIDACGDIDPBACIDACACPBACACIDPBPBACPBPBPBPBCBCBPBNBNBNBNBNBNBNBNBNBNBNBCBNBNBNBNBCBNBNBCBPBPBPBACPBPBACACIDPBNBCBNBCBPBNBPBCBPBPBPBPBPBACPBACACACIDIDACIDIDIDJDLEKDMEMEMELEHFAGKGLGCJCJAJAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAKIFJLGLGHFMEHFMEMEJDMEIDJDLECEMEJDIDJDIDGDBCGDACGDACGDACGDACPBPBPBGDPBPBPBACPBPBPBCBPBCBNBNBNBCBNBNBNBBBBBBBBBBBBBBBBBBBBBBBNBNBNBNBNBCBNBPBPBPBACPBIDACPBPBNBPBCBCBPBCBPBPBPBPBACPBPBACPBACIDPBACIDIDGDIDIDJDLEMEMEKDMEKGMELGAIBICJDKICAAAAAAAAAAAAAA",
+"AAAAAAAAAALJCIMGMGKGHFMEMEKDLEJDMELEIDMEKDLEJDIDJDACGDHDGDACIDACPBACPBPBACPBACPBACPBPBPBCBPBNBCBNBNBCBNBNBBBBBBBBBBBBBBBBBBBBBBBBBBBABBBBBBBBBNBNBNBCBNBPBPBACACIDCBNBPBCBNBPBNBPBNBPBCBPBPBPBPBPBACPBPBACIDIDACIDHDIDIDJDIDLEMEMEMEHHKGKGCIHJDJJCAAAAAAAAAAAAAA",
+"AAAAAAAAAAOICICIHFAGHFMEHFMEKDLEJDIDMEJDMEKDMEIDIDIDACGDACGDACPBGDPBGDPBPBACPBCBPBCBPBPBNBCBPBNBNBNBNBBBBBBBBBBBBBBBLBBBLBBBLBBBLBBBBBBBBBBBABNBBBCBNBCBCBPBPBPBACPBNBNBNBCBNBPBNBPBNBPBCBPBPBPBPBPBACACIDPBACIDIDGDHDIDLEJDLEMEMEKDMEKGHHKGFJHJCGAAAAAAAAAAAAAA",
+"AAAAAAAAAANHEJMGHHHFMEHFMEKDMEJDIDLEJDGDMEMEIDJDGDJDIDACGDGDACGDACPBACPBCBPBCBPBCBPBPBNBPBNBCBNBNBCBBBBBBBABBBLBBBLBBBLBBBLBPALBBBBBPALBLBBBBBBBBBBBNBNBNBPBPBACACNBCBNBNBNBCBNBNBCBCBNBPBCBPBPBPBACPBPBPBACACIDACJDGDIDIDLEJDMEMEMEMEMGMECIAINJAHAAAAAAAAAAAAAA",
+"AAAAAAAAAAAHCICILGMGAGMEMEMEKDMEMEJDGDIDGDMEJDJDIDGDJDACIDACPBACPBGDCBACPBPBPBPBPBCBPBCBPBPBNBCBNBNBBBABNBBBLBBBPABBPALBPABBBBPALBPABBLBBBLBPABBBBBBABNBPBCBPBACPBPBBBNBNBNBNBNBCBNBPBCBNBPBCBPBACPBACACPBIDPBIDACIDIDGDJDIDLEMEMEHFLEKGMGKGCICJNHAAAAAAAAAAAAAA",
+"AAAAAAAAAAMDEJCIMGMEHFMEHFCEMELEJDIDJDGDJDIDJDMEIDJDACIDIDACGDPBACACIDPBACPBACACPBPBCBPBPBNBCBCBNBNBABBBBBBBBBPALBLBBBLBBBPAPABBPALBPABBPALBBBBBBBBBNBNBNBPBACPBACNBBBNBABBBNBCBNBCBNBNBPBCBPBPBPBPBPBPBACPBIDACIDACGDHDIDLEIDJDMEMEKGMEKGCIAIEJNHAAAAAAAAAAAAAA",
+"AAAAAAAAAAPEFJLGMGMGMEHFMEMEMEJDMEIDLEJDGDGDIDJDIDIDIDGDACIDACGDPBACPBACPBPBPBPBCBPBPBCBCBPBNBNBNBBBNBBBBBLBBBBBPABBPALBPALBLBPABBPALBPABBPALBBBBBABCBNBPBPBPBPBPBBBBBBBNBBBBBNBNBCBNBCBNBPBNBPBPBPBPBACPBACPBIDPBIDGDIDGDJDLEIDMEMEMELGMEKGCIDJKIAAAAAAAAAAAAAA",
+"AAAAAAAAAAICIJCIIHLGMEHFNEMEKDMEIDJDJDGDIDHDGDLEJDJDIDACIDGDACACGDACPBPBPBPBPBCBPBPBCBNBNBNBCBNBNBABBBBBBBBBLBPALBPABBPAPABBPALBPALBPALBPABBLBBBBBNBNBNBCBCBPBPBBBBBBBBBBBNBABNBNBNBNBNBCBNBCBCBPBPBPBPBACPBACPBIDACJDGDIDIDJDMEMEMEHFMELGMGHHEJEKAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAIJCILGHFMGMEKDMEMEKDMEIDIDJDGDIDGDIDIDIDJDIDACIDACPBACPBACPBCBPBCBPBCBNBCBPBNBCBNBNBNBNBBBBBLBBBLBBBPALBPABBLBPALBPAPALBPABBLBPABBBBABNBCBPBNBPBPBABBBBBLBBBBBBBNBBBCBNBNBNBNBPBNBPBCBPBPBACPBACIDACPBIDACIDGDJDIDLEMEMEMELGKGLGCIAIDJJCAAAAAAAAAAAA",
+"AAAAAAAAAAAABJCIMGMGMEHFMECEMEMEJDLEJDIDJDGDACGDIDJDIDGDIDACGDIDPBACPBPBPBCBPBCBNBPBNBNBCBNBNBCBBBBBBBLBBBLBBBPALBPABBPAPALBPALBBBPABBPABBBBBBBBNBNBNBCBPBPBCBNBBBPABBBBBBBBBBCBBBBBNBCBNBNBPBNBCBPBPBPBACPBPBPBACGDIDGDJDGDLEJDMEMEHFMEMEMGAIFJNJJCAAAAAAAAAAAA",
+"AAAAAAAAAAAANHBICIMGHFMEHFMEMEJDLEJDIDGDIDHDGDGDHDIDJDJDGDGDACACGDPBPBCBPBPBCBPBCBCBPBNBNBCBNBNBBBABBBBBBBBBPABBLBBBLBLBPABBPALBPABBPALBLBBBABNBCBNBCBPBCBCBNBPABBBBLBBBBBABNBBBBBCBBBNBCBNBCBPBNBPBPBPBPBPBACIDACIDACIDGDJDIDLEMEMEMELGMGKGMGCJNJLDAAAAAAAAAAAA",
+"AAAAAAAAAAAAKFFJCIHFLGHFAGMEKDLEJDIDJDIDHDGDIDACGDGDIDIDJDACIDACACPBOBPBPBCBPBNBPBNBNBCBCBNBNBNBABNBBBBBLBBBLBBBPALBPAPABBPALBPABBLBLBBBBBBBNBCBNBCBCBPBCBNBPABBLBBBLBBBBBBBBBBBCBBBNBNBNBNBCBNBPBCBPBPBPBACACPBIDACGDGDIDIDJEJDMEHFMEMEMEKGBICIHJOEAAAAAAAAAAAA",
+"AAAAAAAAAAAAKCFJLGMGHFMEHFMEKDMELEJDIDJDIDGDACIDACGDGDJDIDIDACIDACACPBACCBPBPBPBCBPBCBNBCBCBCBNBPBNBCBBBBBLBBBLBPABBLBBBLBBBPABBLBPABBBBABNBNBNBCBPBPBNBPABBBBLBPABBBBLBBBBBBBBBBBABNBCBNBCBNBCBCBNBPBPBPBPBACACPBIDACIDGDGDIDLEMEMEHFMELGHHBICIHJJCAAAAAAAAAAAA",
+"AAAAAAAAAAAAICEJCILGMGHFMEHFMEKDJDLEJDIDGDIDJDGDIDACGDACIDIDIDACIDIDACACPBACPBACPBPBPBPBPBPBNBCBNBCBNBABBBBBBBPABBBBPALBPALBBBLBBBNBABBBNBCBNBCBPBCBBBBBBBBBPABBBBBBLBBBBBBBBBABBBNBBBNBCBNBNBPBNBPBCBPBPBPBPBPBIDACGDGDGDIDMEJDMEMEMEMEKGKGCICJDJICAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAHGFJMGHFHHCEMEHFMEIDJDIDJDIDACIDGDACGDACPBACIDACIDIDACIDACACPBPBPBPBPBCBCBNBNBPBNBNBNBBBNBBBLBBBBBLBLBBBBBBBBBBBBBBBBBNBCBNBCBCBNBPBNBBBLBPABBLBPABBLBBBBBABBBBBNBABNBNBNBNBCBCBNBPBCBPBPBPBACPBIDPBIDACGDJDGDJDLEMEKDMELGMEHHLGFJHKAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAFICIIHMGMEHFCEMEMEMEJDLEIDHDIDIDACGDGDPBIDPBPBPBIDACIDIDPBPBACPBCBPBNBPBNBCBCBNBNBCBNBNBABBBABBBLBBBBBBBBBBBLBBBNBABNBCBNBCBNBPBPBBBBBPABBPALBPABBLBBBBBLBBBNBABBBNBNBCBNBCBNBNBCBPBCBPBCBPBPBIDPBACGDPBHDGDLEIDMEMEMEHFMEMGKGCICJHJAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAMDFJLGMGMGMEHFMEKDMEKDJDIDIDGDHDIDACACPBGDACPBPBCBPBIDACIDACPBPBPBCBPBCBPBNBNBCBNBNBBBCBNBBBNBBBABBBBBABBBABNBABCBNBCBNBCBPBPBCBPABBPALBPABBPABBLBPABBLBBBBBBBNBBBBBCBBBCBNBNBCBPBNBPBCBPBPBPBPBACGDACIDIDIDJDLEJDKDMEMEMGHFKGCICJKIAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAACJCILGHFHFHFMEKDJDMEMEIDJDIDACGDACGDGDACPBGDPBPBACPBIDACACPBACPBPBPBNBCBNBCBNBCBBBCBNBNBABNBABNBNBABBBNBNBCBNBNBCBCBPBPBPBCBPABBPALBPABBLBLBPALBBBLBBBBBBBBBBBBBCBBBCBNBNBNBPBNBCBPBPBCBPBPBACGDACIDHDIDIDIDJDMELEHFMEHFKGMGAIFJOIAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAOHCICILGMEAGKDMEKDLEJDJDIDIDIDIDGDACACGDACPBACPBPBPBACIDIDACPBACPBCBPBCBCBNBCBNBCBNBCBNBNBCBNBNBCBNBCBNBCBNBPBCBPBPBPBNBBBPABBLBPABBPALBPABBLBPABBBBBBBBABBBABNBBBCBNBNBCBNBCBCBPBNBPBPBACACPBACIDIDIDJDIDJDLEKDMEMEHFKGHFHHCICJCGAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAMDFJCIHFMGHFMEHFMEJDMEIDJDIDIDACIDPBIDACPBACPBPBCBPBPBPBACIDACACPBACPBNBPBPBCBPBNBCBNBCBNBCBNBCBNBCBNBCBCBPBCBPBPBCBBBBBBBPALBPABBPALBPALBBBPABBLBBBBBABBBNBNBBBCBNBNBCBNBCBNBCBPBCBACPBACPBIDACIDACIDIDJDLEKDMEMEHFMEHFMGAICIHJMDAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAHJCIMGHFMEHFMEKDMEKDLEIDJDGDIDACIDPBGDACPBGDCBPBPBPBPBIDACIDACACPBACPBPBPBPBCBPBPBCBPBCBNBPBCBPBPBPBPBPBPBPBPBBBBBBBLBPABBLBBBPALBPABBBBLBBBPABBLBBBBBBBABNBNBNBNBBBCBNBCBPBNBPBPBPBACPBACACIDBCJDJDIDJDIDMEKDHFMEHFKGMGMGCJHJICAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAEHCILGMGMGMEHFMEKDLEJDJDIDJDACIDGDGDACACGDACPBACPBCBPBPBPBACIDIDACACACACACACPBACCBPBPBPBACCBPBPBPBPBACPBCBNBBBBBBBLBBBLBPABBPALBBBBBLBLBBBLBBBBBABBBBBCBNBNBNBNBNBCBNBCBNBCBCBPBACPBACACIDBCIDIDIDIDJDMEKDMEKDMEMEAGHFKGCIEJPIAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAJCIJCILGHFHFMEHFMEMEIDJDIDIDJDACIDACPBPBGDPBACPBPBGDCBPBPBPBPBACIDACACACACPBACPBACACPBACPBACACPBACPBNBCBNBBBBBLBBBBBPABBBBLBBBPALBPABBBBBBBBLBBBNBBBABNBBBCBBBCBNBNBCBNBPBPBPBPBPBACACACACIDBCIDJDIDJDIDMEKDMECEHFMEMGMGBICJCGAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAOIIHMGMGMEHFNEMEKDMEIDJDIDIDJDGDACGDGDACACPBGDPBACPBPBCBPBPBPBPBIDPBIDACIDACACACACACACPBPBPBCBNBNBCBBBBBBBBBBBLBBBLBBBLBBBLBBBBBBBLBBBLBBBNBABBBBBNBBBCBNBCBNBCBPBNBCBPBPBPBPBACACACACIDACIDJDIDIDKDMEKDMEKDMEHFMGMGBIDJHJAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAICNJCILGMGHFKDMEKDMEJDIDIDIDIDACIDACIDACACGDPBACCBPBPBPBCBPBPBPBPBPBPBPBPBPBPBPBPBNBPBPBNBNBNBNBBBBBBBABBBBBBBLBBBBBLBBBLBBBLBPABBBBLBBBBBBBBBABCBNBNBNBNBNBCBPBCBPBPBPBACACACPBACACIDACKDACIDJDJDIDKDMECEMEHFMEMGLGCICJAHAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAOGEJMGMGMEHFHFMEKDJDLEJDBCGDIDIDIDACPBIDACACACPBACPBPBPBCBPBNBPBPBNBPBPBPBNBPBNBPBNBNBNBBBNBBBNBABBBNBBBLBBBBBLBBBBBLBBBLBBBBBBBBBBBBBNBABNBNBNBNBCBNBCBCBPBNBPBPBPBACACPBACACACIDACIDACIDJDIDIDKDJDMEMEHFHFMGLGMGDJKIAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAABJIHCIMGLGHFMEHFLEJDJDIDJDIDACIDGDACIDPBIDPBACPBACPBPBPBPBPBCBPBPBPBCBNBPBNBPBCBNBCBNBNBBBABNBNBBBBBBBBBBBBBBBLBBBBBBBBBLBBBLBBBBBABNBNBNBNBNBCBNBCBNBPBCBPBPBACPBPBACACACACIDACKDACIDIDIDKDJDMEKDKDHFMEAGLGMGFJOHICAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAADBOICICIHFAGHFMEKDKDLEJDIDJDIDIDACIDACACIDACACGDACACPBACPBPBACPBPBCBPBPBPBPBPBNBCBNBCBBBCBNBNBBBNBABBBBBABBBBBBBBBLBBBBBBBBBNBABBBNBBBCBBBNBCBNBCBNBPBCBPBPBACPBPBACACACACIDACIDACIDIDKDKDJDMEKDMEAGMEHFMGCIHGMDAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAMDHGFJMGHFHFAGMECEMEJDIDJDIDIDIDIDIDACIDPBACIDPBACPBACPBPBACPBPBPBCBPBCBCBPBNBPBNBCBNBCBNBCBNBNBBBCBBBABBBABBBBBABBBBBBBBBCBBBCBNBBBCBNBCBNBPBCBPBPBPBACPBACACACPBACIDACKDACKDIDKDIDJDLEKDMECEHFMGKGFFDCAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKCEHJGCIHFHFMEKDMEKDIDJDJDJDIDIDIDACIDIDACACGDPBPBACPBACPBACPBPBPBPBNBCBPBCBPBNBCBNBCBNBNBCBNBNBCBNBABNBBBNBCBBBCBBBCBNBCBNBNBCBNBCBNBPBCBPBPBPBACPBACPBACACACIDACIDIDKDIDKDKDMEKDCEMEHFMEGFDCDBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICPDEFJEKGHFMECEMEMEJDJDIDJDIDJDIDIDIDACIDACPBACACACPBACPBPBPBACPBPBCBPBPBCBPBNBCBNBCBNBCBNBCBNBCBCBCBNBCBCBCBNBCBNBCBNBCBCBNBPBCBPBPBACPBACACACIDACIDIDKDIDKDIDKDKDLEKDHFLEGFADJCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICDCLFFCGFIELEHFKDKDMEIDJDIDJDIDJDIDIDACIDIDACACACACACPBPBACPBCBPBPBPBPBCBPBCBCBPBCBPBPBPBCBPBPBPBPBCBPBCBCBPBCBPBPBPBACPBACPBACACACIDACIDIDKDLEKDKDKDLEFFFCDCICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICJCIBDCAEADFCFCFCHCBEPBHEIDJDIDJDIDACJDACIDACACACACACACACPBACPBACPBACPBPBPBACPBPBACPBACPBACACPBACACACIDACIDIDIDIDKDIDLEIDNBFEFCMCJCICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADBDBEBEBGBGBIBIBFCOCFCFCFCHCBENBBENBIEPBGDIEPBCDHCHCFCHCHCFCHCFCFCFCFCFCFCOCOCIBIBMCDBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"};
Added: trunk/com.aptana.rdt/icons/full/elcl16/rails.gif
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/full/elcl16/rails.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/full/elcl16/rubydoc.gif
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/full/elcl16/rubydoc.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/rubyred.ico
===================================================================
(Binary files differ)
Property changes on: trunk/com.aptana.rdt/icons/rubyred.ico
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/com.aptana.rdt/icons/rubyred.l.pm
===================================================================
--- trunk/com.aptana.rdt/icons/rubyred.l.pm (rev 0)
+++ trunk/com.aptana.rdt/icons/rubyred.l.pm 2007-05-03 17:26:48 UTC (rev 2424)
@@ -0,0 +1,191 @@
+/* XPM */
+static char *rubyred.l[] = {
+/* width height ncolors chars_per_pixel */
+"48 48 137 2",
+/* colors */
+"AA c #FFFFFFFFFFFF",
+"BA c #FFFFE7E77B7B",
+"CA c #FFFFE7E74A4A",
+"DA c #FFFFDEDE3939",
+"EA c #FFFFD6D67373",
+"FA c #FFFFD6D66363",
+"GA c #FFFFCECE2929",
+"HA c #FFFF9C9C5252",
+"IA c #FFFF73737373",
+"JA c #FFFF73736363",
+"KA c #FFFF6B6B7373",
+"LA c #FFFF6B6B6B6B",
+"MA c #FFFF5A5A6363",
+"NA c #FFFF5A5A4A4A",
+"OA c #FFFF52525A5A",
+"PA c #F7F7DEDE2929",
+"AB c #F7F7A5A53131",
+"BB c #F7F74A4A5252",
+"CB c #F7F74A4A4A4A",
+"DB c #F7F742423939",
+"EB c #F7F739394242",
+"FB c #F7F739393939",
+"GB c #EFEFCECE1818",
+"HB c #EFEFBDBD2929",
+"IB c #EFEF73733131",
+"JB c #EFEF52525A5A",
+"KB c #EFEF52523939",
+"LB c #EFEF4A4A4A4A",
+"MB c #EFEF42423939",
+"NB c #EFEF39394242",
+"OB c #EFEF39393939",
+"PB c #DEDEB5B51818",
+"AC c #DEDE42423939",
+"BC c #DEDE39394242",
+"CC c #DEDE39393939",
+"DC c #DEDE29293131",
+"EC c #D6D6ADAD1010",
+"FC c #D6D67B7B2121",
+"GC c #D6D663636363",
+"HC c #D6D652525252",
+"IC c #D6D642424A4A",
+"JC c #D6D629292929",
+"KC c #CECEC6C6C6C6",
+"LC c #CECEA5A52929",
+"MC c #CECEA5A51818",
+"NC c #CECE9C9C2121",
+"OC c #CECE9C9C1010",
+"PC c #CECE42424242",
+"AD c #CECE39393939",
+"BD c #CECE29293131",
+"CD c #CECE29292929",
+"DD c #C6C6BDBDC6C6",
+"ED c #C6C652525252",
+"FD c #BDBDC6C6CECE",
+"GD c #BDBD73738484",
+"HD c #BDBD63636363",
+"ID c #BDBD4A4A5252",
+"JD c #BDBD39394242",
+"KD c #BDBD31313131",
+"LD c #BDBD29293131",
+"MD c #BDBD21212929",
+"ND c #B5B59C9C4A4A",
+"OD c #B5B55A5A5A5A",
+"PD c #B5B54A4A4A4A",
+"AE c #ADAD7B7B5252",
+"BE c #ADAD7B7B3939",
+"CE c #ADAD6B6B6B6B",
+"DE c #ADAD5A5A6363",
+"EE c #ADAD52525A5A",
+"FE c #ADAD42424A4A",
+"GE c #ADAD39394242",
+"HE c #ADAD31313939",
+"IE c #ADAD29292929",
+"JE c #A5A56B6B7B7B",
+"KE c #9C9CA5A5ADAD",
+"LE c #9C9C5A5A5A5A",
+"ME c #9C9C39393939",
+"NE c #9C9C29292929",
+"OE c #94947B7B4A4A",
+"PE c #949463636363",
+"AF c #949439394242",
+"BF c #8C8C42424A4A",
+"CF c #8C8C39393939",
+"DF c #848473736363",
+"EF c #84845A5A5A5A",
+"FF c #84844A4A5252",
+"GF c #7B7B7B7B7B7B",
+"HF c #7B7B73736363",
+"IF c #7B7B73735A5A",
+"JF c #7B7B6B6B5252",
+"KF c #7B7B63633131",
+"LF c #7B7B52525252",
+"MF c #7B7B4A4A4242",
+"NF c #73736B6B6B6B",
+"OF c #73735A5A2929",
+"PF c #737321212121",
+"AG c #6B6B6B6B7373",
+"BG c #6B6B6B6B6B6B",
+"CG c #6B6B4A4A4A4A",
+"DG c #6B6B39393939",
+"EG c #63635A5A4A4A",
+"FG c #636352525252",
+"GG c #636339394242",
+"HG c #636321212121",
+"IG c #636318181818",
+"JG c #5A5A63636363",
+"KG c #5A5A5A5A5A5A",
+"LG c #5A5A39394242",
+"MG c #5A5A29292929",
+"NG c #5A5A18181818",
+"OG c #52524A4A4A4A",
+"PG c #525242423939",
+"AH c #525239393939",
+"BH c #525229293131",
+"CH c #4A4A52525252",
+"DH c #4A4A4A4A4A4A",
+"EH c #4A4A31313131",
+"FH c #4A4A29292929",
+"GH c #4A4A18181818",
+"HH c #424242423939",
+"IH c #424239392929",
+"JH c #393942424A4A",
+"KH c #393939394242",
+"LH c #393939393131",
+"MH c #393921212121",
+"NH c #313118181818",
+"OH c #292929293131",
+"PH c #292929292929",
+"AI c #212121211818",
+"BI c #212118182121",
+"CI c #212110101818",
+"DI c #181821212121",
+"EI c #181818181818",
+"FI c #181808080808",
+"GI c #101010100808",
+"HI c #080808081010",
+"II c #000000000000",
+/* pixels */
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIPHLHLHBIJHCHPHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIICHIIBGDIEIIIDHPHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJGHIEIOHDHIIPHEIKHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIICHEIEIGIBGHIDHBIKGIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIKHEILHHIJGEIHIEIPHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIOHBIAGHIPHGHIGIGHGPEOGEIIIIIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIILHEIKHEIFICFCDKDCDMDKDHDAHEIIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIICHHIHFBIEIIEBCCCADADADADKDLEIIIIIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIMFCFEILGAHHEICACNBACCCCCADADKDCEPHIIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIFFLDBDCCICLAJBLBLBICLBLBCCCCCCADKDFEEIIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIFGGEADCCBCLBBBNAMEHGNEBCICLBCCICCCADKDLFIIIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIEIEEADCCBCLBLBLBMEBCICHEMEICLBLBOBACCCCCPDPHIIIIIIIIIIIIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIDGKDBDBCLBNBLBHEPCHCIDFFFEODCCLBLBCCICCCADAEJFIFNFDFIFPHIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIBFBDCCOBLBLBPCBBHCJEDDAAFDMHKDICNBLBMBACFCMCOCNCOCMCLCJFIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIPDADCCBCLBLBBBJBICKCAAAAKEEIHECBLBCCLBKBPBPBPBECHBGBPBKFIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIILHLDCDCCOBLBLBOAJBOAIDDEGDGDGENALBLBLBACGAHBGBHBPAGBGAPBOFIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIBHLDCCCCNBLBCBOALALAOALALAJBMAJBLBCBMBIBGAGBGAPAPAPAPBMCEGIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIPHMDDCCCNBLBNAOAOALALALALALALAOAOACBLBABGADAFADAPAGAGBMCHHIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIMHADADOBCCLBBBOALALALAIAIALALALANABBNAFAFABACAPAGBGBMCLCLHIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHHMDJCCCOBCBLBOALALAKAIAIAIALALAOABBNAEACAGAGAGAPAGAGBLCFGIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIEIPDJCCCOBNBCBOAOALALAIAKAIAKAMAOANABCHAEAEACAPAGAGBMCNDEIIIII",
+"IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIBFDCDCOBCBCBNAOAOALALAKALALALAOALBBBJAFACALCGAPBNCOELHIIIIII",
+"IIIIIIIIIIEIDHPHIIIIIIIIIIIIIIIIIIIIMHADDCOBOBEBCBOALAOALALAMAOAOAOACBCBLBKBGAGBMCLCJFIIIIIIIIII",
+"IIIIIIIIEIDHEIKGDHIIIIIIIIIIIIIIIIIIIILEBDOBOBEBCBCBNAOAOAOAOALAOACBCBNBMBMBACFCBEIHIIIIIIIIIIII",
+"IIIIIIEIBGIIEIEIEGCHIIIIIIIIIIIIIIIIIIIIHDDCOBOBEBCBCBOAOANAOACBNACBFBCBOBCCADFEIIIIIIIIIIIIIIII",
+"IIIIIILHEIEIIIEIOHKGGFIIIIIIIIIIIIIIIIIIPHEDDCOBEBEBCBCBNABBCBOAEBCBCBOBOBCCJCAHIIIIIIIIIIIIIIII",
+"IIIIIICHEIIIGIEICIHHOGEFMFGGDGEEEEODPDODODDELDDCOBCBEBBBOALAOALAOABBCBNBCCCCCDMHIIIIIIIIIIIIIIII",
+"IIIIPHPHIICINGNGHGPFLDIEIEHEMDMDKDMDLDCDLDMDMDADCCNBOAOAOALALALALAOACBLBCCCCADEFIIIIIIIIIIIIIIII",
+"IIIIKHEICIKDKDKDKDMDHEMDMDKDKDADCDCDCDLDADCDBDJCCCBCMBLBBBCBOACBBBLBLBNBCCCCBDKDEFIIIIIIIIIIIIII",
+"IIIIIHCIHEADADKDMDMDKDMDKDMDCDCDMDADBDCCCDDCADDCCCCCBCNBLBNBLBLBLBLBNBNBCCCCADKDKDMFIIIIIIIIIIII",
+"IIIICGNECDADCDADADMDADMDADCDADBDADCDADBDADBDCCBDCCBCLBBCLBLBNBLBNBLBOBLBCCCCCCADKDJDLFIIIIIIIIII",
+"IIIIFEMDADCDADCCCCCCCDADCDADCDLDCDADBDBDBDCCBDCCCCDCCCLBLBNBLBCBLBNBLBCCNBOBCCCCADKDFEPHIIIIIIII",
+"IIIIMEKDADCCCDCCCCLBCCCCBCCCBCMBBCCCOBBCOBCCNBBCOBBCCCCCNBLBCBLBCBLBLBLBOBBCOBCCADADHECEIIIIIIII",
+"IIIIMECDCCBDCCCCOBCCLBLBLBLBCBLBLBCBLBLBBBBBCBCBLBLBLBNBNBNBCBBBBBCBCBNBLBNBNBC...
[truncated message content] |
|
From: <caw...@us...> - 2007-05-03 17:26:14
|
Revision: 2423
http://svn.sourceforge.net/rubyeclipse/?rev=2423&view=rev
Author: cawilliams
Date: 2007-05-03 10:26:12 -0700 (Thu, 03 May 2007)
Log Message:
-----------
Share project 'com.aptana.rdt' into 'https://rubyeclipse.svn.sourceforge.net/svnroot/rubyeclipse'
Added Paths:
-----------
trunk/com.aptana.rdt/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|