rsense-core 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +22 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +1 -0
- data/README.md +35 -0
- data/Rakefile +84 -0
- data/TypeAnnotation.tokens +41 -0
- data/build.xml +84 -0
- data/build_lib/antlr-3.2.jar +0 -0
- data/lib/jars/ant-1.7.0.jar +0 -0
- data/lib/jars/ant-launcher-1.7.0.jar +0 -0
- data/lib/jars/antlr-runtime-3.2.jar +0 -0
- data/lib/jars/bsf-2.3.0.jar +0 -0
- data/lib/rsense-core.rb +28 -0
- data/lib/rsense.jar +0 -0
- data/lib/rsense/core.rb +5 -0
- data/lib/rsense/core/version.rb +5 -0
- data/lib/rsense/parser.rb +6 -0
- data/lib/rsense/ruby.rb +19 -0
- data/lib/rsense/typing.rb +13 -0
- data/lib/rsense/typing/annotation.rb +20 -0
- data/lib/rsense/typing/runtime.rb +23 -0
- data/lib/rsense/typing/vertex.rb +15 -0
- data/lib/rsense/util.rb +9 -0
- data/rsense-core.gemspec +30 -0
- data/src/org/cx4a/rsense/CodeAssist.java +744 -0
- data/src/org/cx4a/rsense/CodeAssistError.java +31 -0
- data/src/org/cx4a/rsense/CodeAssistResult.java +42 -0
- data/src/org/cx4a/rsense/CodeCompletionResult.java +65 -0
- data/src/org/cx4a/rsense/FindDefinitionResult.java +24 -0
- data/src/org/cx4a/rsense/LoadResult.java +19 -0
- data/src/org/cx4a/rsense/Main.java +916 -0
- data/src/org/cx4a/rsense/Options.java +353 -0
- data/src/org/cx4a/rsense/Project.java +103 -0
- data/src/org/cx4a/rsense/TypeInferenceResult.java +25 -0
- data/src/org/cx4a/rsense/WhereResult.java +19 -0
- data/src/org/cx4a/rsense/parser/TypeAnnotation.g +221 -0
- data/src/org/cx4a/rsense/parser/TypeAnnotationLexer.java +1759 -0
- data/src/org/cx4a/rsense/parser/TypeAnnotationParser.java +2025 -0
- data/src/org/cx4a/rsense/ruby/Block.java +10 -0
- data/src/org/cx4a/rsense/ruby/Context.java +75 -0
- data/src/org/cx4a/rsense/ruby/DynamicMethod.java +10 -0
- data/src/org/cx4a/rsense/ruby/DynamicScope.java +51 -0
- data/src/org/cx4a/rsense/ruby/Frame.java +95 -0
- data/src/org/cx4a/rsense/ruby/IRubyObject.java +17 -0
- data/src/org/cx4a/rsense/ruby/LocalScope.java +43 -0
- data/src/org/cx4a/rsense/ruby/MetaClass.java +50 -0
- data/src/org/cx4a/rsense/ruby/Ruby.java +242 -0
- data/src/org/cx4a/rsense/ruby/RubyClass.java +146 -0
- data/src/org/cx4a/rsense/ruby/RubyModule.java +255 -0
- data/src/org/cx4a/rsense/ruby/RubyObject.java +94 -0
- data/src/org/cx4a/rsense/ruby/Scope.java +7 -0
- data/src/org/cx4a/rsense/ruby/SpecialObject.java +15 -0
- data/src/org/cx4a/rsense/ruby/Visibility.java +17 -0
- data/src/org/cx4a/rsense/typing/Graph.java +1690 -0
- data/src/org/cx4a/rsense/typing/Propagation.java +73 -0
- data/src/org/cx4a/rsense/typing/Template.java +84 -0
- data/src/org/cx4a/rsense/typing/TemplateAttribute.java +158 -0
- data/src/org/cx4a/rsense/typing/TypeSet.java +48 -0
- data/src/org/cx4a/rsense/typing/annotation/ClassType.java +57 -0
- data/src/org/cx4a/rsense/typing/annotation/MethodType.java +79 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeAnnotation.java +4 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeAny.java +7 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeApplication.java +37 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeConstraint.java +29 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeExpression.java +11 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeIdentity.java +59 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeOptional.java +22 -0
- data/src/org/cx4a/rsense/typing/annotation/TypePragma.java +22 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeSplat.java +22 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeTuple.java +35 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeUnion.java +23 -0
- data/src/org/cx4a/rsense/typing/annotation/TypeVariable.java +44 -0
- data/src/org/cx4a/rsense/typing/runtime/AliasMethod.java +94 -0
- data/src/org/cx4a/rsense/typing/runtime/AnnotationHelper.java +69 -0
- data/src/org/cx4a/rsense/typing/runtime/AnnotationResolver.java +523 -0
- data/src/org/cx4a/rsense/typing/runtime/Array.java +84 -0
- data/src/org/cx4a/rsense/typing/runtime/ClassTag.java +27 -0
- data/src/org/cx4a/rsense/typing/runtime/DefaultMethod.java +115 -0
- data/src/org/cx4a/rsense/typing/runtime/Hash.java +131 -0
- data/src/org/cx4a/rsense/typing/runtime/LoopTag.java +21 -0
- data/src/org/cx4a/rsense/typing/runtime/Method.java +32 -0
- data/src/org/cx4a/rsense/typing/runtime/MonomorphicObject.java +77 -0
- data/src/org/cx4a/rsense/typing/runtime/ObjectAllocator.java +40 -0
- data/src/org/cx4a/rsense/typing/runtime/PolymorphicObject.java +90 -0
- data/src/org/cx4a/rsense/typing/runtime/Proc.java +100 -0
- data/src/org/cx4a/rsense/typing/runtime/RuntimeHelper.java +1339 -0
- data/src/org/cx4a/rsense/typing/runtime/SpecialMethod.java +119 -0
- data/src/org/cx4a/rsense/typing/runtime/TypeVarMap.java +112 -0
- data/src/org/cx4a/rsense/typing/runtime/VertexHolder.java +48 -0
- data/src/org/cx4a/rsense/typing/vertex/CallVertex.java +122 -0
- data/src/org/cx4a/rsense/typing/vertex/MultipleAsgnVertex.java +23 -0
- data/src/org/cx4a/rsense/typing/vertex/PassThroughVertex.java +20 -0
- data/src/org/cx4a/rsense/typing/vertex/SValueVertex.java +24 -0
- data/src/org/cx4a/rsense/typing/vertex/SplatVertex.java +24 -0
- data/src/org/cx4a/rsense/typing/vertex/ToAryVertex.java +24 -0
- data/src/org/cx4a/rsense/typing/vertex/TypeVarVertex.java +22 -0
- data/src/org/cx4a/rsense/typing/vertex/Vertex.java +221 -0
- data/src/org/cx4a/rsense/typing/vertex/YieldVertex.java +70 -0
- data/src/org/cx4a/rsense/util/HereDocReader.java +48 -0
- data/src/org/cx4a/rsense/util/Logger.java +111 -0
- data/src/org/cx4a/rsense/util/NodeUtil.java +198 -0
- data/src/org/cx4a/rsense/util/SourceLocation.java +70 -0
- data/src/org/cx4a/rsense/util/StringUtil.java +63 -0
- data/src/resources/org/cx4a/rsense/rsense.properties +1 -0
- data/stubs/1.8/_builtin.rb +3006 -0
- data/stubs/1.8/bigdecimal.rb +131 -0
- data/stubs/1.8/cgi.rb +257 -0
- data/stubs/1.8/date.rb +147 -0
- data/stubs/1.8/optparse.rb +113 -0
- data/stubs/1.8/rational.rb +47 -0
- data/stubs/1.8/set.rb +94 -0
- data/stubs/1.8/socket.rb +461 -0
- data/stubs/1.8/stringio.rb +129 -0
- data/test/data/a file.rb +1 -0
- data/test/data/benchmark.rb +12 -0
- data/test/data/crlf.rb +5 -0
- data/test/data/test.rb +19 -0
- data/test/script/all.rsense +2 -0
- data/test/script/array_dynamic.rsense +25 -0
- data/test/script/block_nested.rsense +7 -0
- data/test/script/builtin.rsense +785 -0
- data/test/script/class_method_partial_update.rsense +52 -0
- data/test/script/class_partial_update.rsense +17 -0
- data/test/script/find-definition.rsense +72 -0
- data/test/script/method_arg_onearg.rsense +6 -0
- data/test/script/method_arg_optional.rsense +7 -0
- data/test/script/method_partial_update.rsense +14 -0
- data/test/script/method_yield_arrayarg.rsense +8 -0
- data/test/script/method_yield_arrayarg_expand.rsense +8 -0
- data/test/script/method_yield_arrayarg_splat.rsense +17 -0
- data/test/script/misc.rsense +2 -0
- data/test/script/proc_higher_order.rsense +22 -0
- data/test/script/regression.rsense +95 -0
- data/test/script/stdlib.rsense +66 -0
- data/test/script/where.rsense +41 -0
- metadata +315 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: b4840a9d845fb17e6701ff7c33977e32cb3fd877
|
|
4
|
+
data.tar.gz: 2b5f8bb28c36966451e4c90a26cd71ce7c6625c8
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: a33faea106dbcb3472f5b548ac73f8de911929c909a3b6f4d2560f873be492b0ad43c3c1dfb53e272eb8843ff667d344cc9367aa0ba81d178f904459152ec217
|
|
7
|
+
data.tar.gz: 9d2aaec41bb01195b67badcda271b2cb90b9ee3025cf04cf771af607e35d17724f19df77f0a7689cd771d4272fad0f3a9062a11405bca6816dd6760b4f26016d
|
data/.gitignore
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
*.gem
|
|
2
|
+
*.rbc
|
|
3
|
+
.bundle
|
|
4
|
+
.config
|
|
5
|
+
.yardoc
|
|
6
|
+
Gemfile.lock
|
|
7
|
+
InstalledFiles
|
|
8
|
+
_yardoc
|
|
9
|
+
coverage
|
|
10
|
+
doc/
|
|
11
|
+
lib/bundler/man
|
|
12
|
+
pkg
|
|
13
|
+
rdoc
|
|
14
|
+
spec/reports
|
|
15
|
+
test/tmp
|
|
16
|
+
test/version_tmp
|
|
17
|
+
tmp
|
|
18
|
+
*.bundle
|
|
19
|
+
*.so
|
|
20
|
+
*.o
|
|
21
|
+
*.a
|
|
22
|
+
mkmf.log
|
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
RSense is distributed under the term of GPLv3+(http://gplv3.fsf.org/).
|
data/README.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Rsense::Core
|
|
2
|
+
|
|
3
|
+
RSense is a tool for doing type-inference, code-completion and
|
|
4
|
+
other static analysis on Ruby code. RSense knows your code.
|
|
5
|
+
|
|
6
|
+
## Installation
|
|
7
|
+
|
|
8
|
+
Add this line to your application's Gemfile:
|
|
9
|
+
|
|
10
|
+
gem 'rsense-core'
|
|
11
|
+
|
|
12
|
+
And then execute:
|
|
13
|
+
|
|
14
|
+
$ bundle
|
|
15
|
+
|
|
16
|
+
Or install it yourself as:
|
|
17
|
+
|
|
18
|
+
$ gem install rsense-core
|
|
19
|
+
|
|
20
|
+
## Usage
|
|
21
|
+
|
|
22
|
+
TODO: Write usage instructions here
|
|
23
|
+
|
|
24
|
+
## Contributing
|
|
25
|
+
|
|
26
|
+
1. Fork it ( https://github.com/[my-github-username]/rsense-core/fork )
|
|
27
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
|
28
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
|
29
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
|
30
|
+
5. Create a new Pull Request
|
|
31
|
+
|
|
32
|
+
## License
|
|
33
|
+
|
|
34
|
+
RSense is distributed under the term of
|
|
35
|
+
[GPLv3+](http://gplv3.fsf.org/).
|
data/Rakefile
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
require "bundler/gem_tasks"
|
|
2
|
+
require "jruby-parser"
|
|
3
|
+
require "ant"
|
|
4
|
+
require "pathname"
|
|
5
|
+
require "rsense"
|
|
6
|
+
|
|
7
|
+
ant_import
|
|
8
|
+
|
|
9
|
+
def parser_path
|
|
10
|
+
jrp_path = ""
|
|
11
|
+
$LOAD_PATH.each do |p|
|
|
12
|
+
if p =~ /jruby-parser/
|
|
13
|
+
jrp_path = p
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
jrp_path = Pathname.new(jrp_path).join("jruby-parser.jar")
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
ant.path :id => "build.class.path" do
|
|
20
|
+
fileset :file => "build_lib/*.jar"
|
|
21
|
+
fileset :file => "lib/jars/*.jar"
|
|
22
|
+
fileset :file => "#{parser_path.to_s}"
|
|
23
|
+
fileset :file => "lib/rsense.jar"
|
|
24
|
+
pathelement :path => "${classpath}"
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
desc "Build RSense Jar"
|
|
28
|
+
task :build_jar => [:antlr, :set_version] do
|
|
29
|
+
ant.javac(:fork => "true", :debug =>"true", :deprecation => "true", :srcdir => "src", :destdir => "build", :classpathref => "build.class.path") do
|
|
30
|
+
compilerarg :value => "-Xlint:all"
|
|
31
|
+
end
|
|
32
|
+
ant.jar(:jarfile => "lib/rsense.jar", :basedir => "build") do
|
|
33
|
+
fileset :dir => "src/resources"
|
|
34
|
+
manifest do
|
|
35
|
+
attribute :name => "Main-Class", :value => "org.cx4a.rsense.Main"
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
desc "Update Rsense\'s Version in Java Properties File"
|
|
41
|
+
task :set_version do
|
|
42
|
+
prop_file = Pathname.new("./src/resources/org/cx4a/rsense/rsense.properties").expand_path
|
|
43
|
+
version = Rsense::Core::VERSION
|
|
44
|
+
File.open(prop_file, "w") do |f|
|
|
45
|
+
f.puts "rsense.version = #{version}"
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
desc "Run Rsense\'s set of tests"
|
|
50
|
+
task :rtests => [:build_jar] do
|
|
51
|
+
ant.java(fork: "true", classpathref: "build.class.path", classname: "org.cx4a.rsense.Main") do
|
|
52
|
+
arg(value: "script")
|
|
53
|
+
arg(file: "test/script/all.rsense")
|
|
54
|
+
arg(value: "--log-level=error")
|
|
55
|
+
arg(value: "--test-color")
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
desc "Test, Bump, Build"
|
|
60
|
+
task :prepare_jar => [:set_version, :build_jar, :rtests] do
|
|
61
|
+
puts "Jar Prepared!"
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
desc "Build from scratch"
|
|
65
|
+
task :build_scratch => [:prepare_jar, :build] do
|
|
66
|
+
puts "Built gem from scratch."
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
desc "Install locally from scratch"
|
|
70
|
+
task :install_scratch => [:build_scratch, :install] do
|
|
71
|
+
puts "Installed from scratch."
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
desc "Commit rsense.jar"
|
|
75
|
+
task :commit_jar do
|
|
76
|
+
sh "git add lib/rsense.jar"
|
|
77
|
+
sh "git commit -m 'Rebuilds rsense.jar'"
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
desc "Cut a release from scratch."
|
|
81
|
+
task :release_scratch => [:build_scratch, :commit_jar,:release] do
|
|
82
|
+
puts "Release published from scratch."
|
|
83
|
+
end
|
|
84
|
+
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
T__26=26
|
|
2
|
+
T__25=25
|
|
3
|
+
T__24=24
|
|
4
|
+
T__23=23
|
|
5
|
+
T__22=22
|
|
6
|
+
T__21=21
|
|
7
|
+
T__20=20
|
|
8
|
+
WHITEESPACE=8
|
|
9
|
+
ID=4
|
|
10
|
+
T__9=9
|
|
11
|
+
CONST_ID=5
|
|
12
|
+
METHOD_NAME=6
|
|
13
|
+
T__19=19
|
|
14
|
+
T__16=16
|
|
15
|
+
METHOD_NAME_UNQUOTED=7
|
|
16
|
+
T__15=15
|
|
17
|
+
T__18=18
|
|
18
|
+
T__17=17
|
|
19
|
+
T__12=12
|
|
20
|
+
T__11=11
|
|
21
|
+
T__14=14
|
|
22
|
+
T__13=13
|
|
23
|
+
T__10=10
|
|
24
|
+
'|'=12
|
|
25
|
+
'}'=18
|
|
26
|
+
'>'=13
|
|
27
|
+
'{'=17
|
|
28
|
+
'?'=24
|
|
29
|
+
'<='=19
|
|
30
|
+
'!nobody'=21
|
|
31
|
+
'<'=11
|
|
32
|
+
'('=14
|
|
33
|
+
'or'=26
|
|
34
|
+
'*'=25
|
|
35
|
+
'['=22
|
|
36
|
+
'::'=9
|
|
37
|
+
','=20
|
|
38
|
+
'.'=10
|
|
39
|
+
')'=15
|
|
40
|
+
']'=23
|
|
41
|
+
'->'=16
|
data/build.xml
ADDED
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
<project name="rsense" default="init" basedir=".">
|
|
2
|
+
<property file="src/resources/org/cx4a/rsense/rsense.properties" />
|
|
3
|
+
|
|
4
|
+
<path id="build.class.path">
|
|
5
|
+
<fileset file="build_lib/*.jar" />
|
|
6
|
+
<fileset file="lib/jars/*.jar" />
|
|
7
|
+
<pathelement path="${classpath}" />
|
|
8
|
+
</path>
|
|
9
|
+
|
|
10
|
+
<target name="init">
|
|
11
|
+
<mkdir dir="build" />
|
|
12
|
+
</target>
|
|
13
|
+
|
|
14
|
+
<target name="antlr" depends="init">
|
|
15
|
+
<java fork="true" classpathref="build.class.path" classname="org.antlr.Tool">
|
|
16
|
+
<arg value="-make" />
|
|
17
|
+
<arg file="src/org/cx4a/rsense/parser/TypeAnnotation.g" />
|
|
18
|
+
</java>
|
|
19
|
+
</target>
|
|
20
|
+
|
|
21
|
+
<target name="test">
|
|
22
|
+
<antcall target="dotest">
|
|
23
|
+
<param name="name" value="all" />
|
|
24
|
+
</antcall>
|
|
25
|
+
</target>
|
|
26
|
+
|
|
27
|
+
<target name="test.builtin">
|
|
28
|
+
<antcall target="dotest">
|
|
29
|
+
<param name="name" value="builtin" />
|
|
30
|
+
</antcall>
|
|
31
|
+
</target>
|
|
32
|
+
|
|
33
|
+
<target name="test.stdlib">
|
|
34
|
+
<antcall target="dotest">
|
|
35
|
+
<param name="name" value="stdlib" />
|
|
36
|
+
</antcall>
|
|
37
|
+
</target>
|
|
38
|
+
|
|
39
|
+
<target name="test.misc">
|
|
40
|
+
<antcall target="dotest">
|
|
41
|
+
<param name="name" value="misc" />
|
|
42
|
+
</antcall>
|
|
43
|
+
</target>
|
|
44
|
+
|
|
45
|
+
<target name="test.regression">
|
|
46
|
+
<antcall target="dotest">
|
|
47
|
+
<param name="name" value="regression" />
|
|
48
|
+
</antcall>
|
|
49
|
+
</target>
|
|
50
|
+
|
|
51
|
+
<target name="test.where">
|
|
52
|
+
<antcall target="dotest">
|
|
53
|
+
<param name="name" value="where" />
|
|
54
|
+
</antcall>
|
|
55
|
+
</target>
|
|
56
|
+
|
|
57
|
+
<target name="test.find-definition">
|
|
58
|
+
<antcall target="dotest">
|
|
59
|
+
<param name="name" value="find-definition" />
|
|
60
|
+
</antcall>
|
|
61
|
+
</target>
|
|
62
|
+
|
|
63
|
+
<target name="dotest">
|
|
64
|
+
<java fork="true" classpathref="build.class.path" classname="org.cx4a.rsense.Main">
|
|
65
|
+
<arg value="script" /><arg file="test/script/${name}.rsense" />
|
|
66
|
+
<arg value="--log-level=error" />
|
|
67
|
+
<arg value="--test-color" />
|
|
68
|
+
</java>
|
|
69
|
+
</target>
|
|
70
|
+
|
|
71
|
+
<target name="clean">
|
|
72
|
+
<delete quiet="true" includeEmptyDirs="true">
|
|
73
|
+
<fileset dir="build" />
|
|
74
|
+
<fileset file="rsense-*.tar.bz2" />
|
|
75
|
+
<fileset file="rsense-*.zip" />
|
|
76
|
+
<fileset file="hs_err_pid*.log" />
|
|
77
|
+
<fileset file="lib/rsense.jar" />
|
|
78
|
+
<fileset file="java.hprof.txt" />
|
|
79
|
+
<fileset file="doc/*.html" />
|
|
80
|
+
<fileset file="TypeAnnotation.tokens" />
|
|
81
|
+
<fileset file="src/org/cx4a/rsense/parser/TypeAnnotation*.java" />
|
|
82
|
+
</delete>
|
|
83
|
+
</target>
|
|
84
|
+
</project>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
data/lib/rsense-core.rb
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
require "java"
|
|
2
|
+
require "pathname"
|
|
3
|
+
require "jruby-parser"
|
|
4
|
+
require "rsense/core/version"
|
|
5
|
+
require "rsense.jar"
|
|
6
|
+
|
|
7
|
+
jarpath = Pathname.new(__FILE__).dirname.join("jars").expand_path
|
|
8
|
+
jarpath.children.each do |c|
|
|
9
|
+
require(c)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
require "rsense/util"
|
|
13
|
+
require "rsense/typing"
|
|
14
|
+
require "rsense/ruby"
|
|
15
|
+
require "rsense/parser"
|
|
16
|
+
|
|
17
|
+
module Rsense
|
|
18
|
+
import Java::org.cx4a.rsense::CodeAssist
|
|
19
|
+
import Java::org.cx4a.rsense::CodeAssistError
|
|
20
|
+
import Java::org.cx4a.rsense::CodeAssistResult
|
|
21
|
+
import Java::org.cx4a.rsense::CodeCompletionResult
|
|
22
|
+
import Java::org.cx4a.rsense::FindDefinitionResult
|
|
23
|
+
import Java::org.cx4a.rsense::LoadResult
|
|
24
|
+
import Java::org.cx4a.rsense::Options
|
|
25
|
+
import Java::org.cx4a.rsense::Project
|
|
26
|
+
import Java::org.cx4a.rsense::TypeInferenceResult
|
|
27
|
+
import Java::org.cx4a.rsense::WhereResult
|
|
28
|
+
end
|
data/lib/rsense.jar
ADDED
|
Binary file
|
data/lib/rsense/core.rb
ADDED
data/lib/rsense/ruby.rb
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
module Rsense
|
|
2
|
+
module Ruby
|
|
3
|
+
import Java::org.cx4a.rsense.ruby::Block
|
|
4
|
+
import Java::org.cx4a.rsense.ruby::Context
|
|
5
|
+
import Java::org.cx4a.rsense.ruby::DynamicMethod
|
|
6
|
+
import Java::org.cx4a.rsense.ruby::DynamicScope
|
|
7
|
+
import Java::org.cx4a.rsense.ruby::Frame
|
|
8
|
+
import Java::org.cx4a.rsense.ruby::IRubyObject
|
|
9
|
+
import Java::org.cx4a.rsense.ruby::LocalScope
|
|
10
|
+
import Java::org.cx4a.rsense.ruby::MetaClass
|
|
11
|
+
import Java::org.cx4a.rsense.ruby::Ruby
|
|
12
|
+
import Java::org.cx4a.rsense.ruby::RubyClass
|
|
13
|
+
import Java::org.cx4a.rsense.ruby::RubyModule
|
|
14
|
+
import Java::org.cx4a.rsense.ruby::RubyObject
|
|
15
|
+
import Java::org.cx4a.rsense.ruby::Scope
|
|
16
|
+
import Java::org.cx4a.rsense.ruby::SpecialObject
|
|
17
|
+
import Java::org.cx4a.rsense.ruby::Visibility
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
require_relative "./typing/annotation"
|
|
2
|
+
require_relative "./typing/runtime"
|
|
3
|
+
require_relative "./typing/vertex"
|
|
4
|
+
|
|
5
|
+
module Rsense
|
|
6
|
+
module Typing
|
|
7
|
+
import Java::org.cx4a.rsense.typing::Graph
|
|
8
|
+
import Java::org.cx4a.rsense.typing::Propagation
|
|
9
|
+
import Java::org.cx4a.rsense.typing::Template
|
|
10
|
+
import Java::org.cx4a.rsense.typing::TemplateAttribute
|
|
11
|
+
import Java::org.cx4a.rsense.typing::TypeSet
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module Rsense
|
|
2
|
+
module Typing
|
|
3
|
+
module Annotation
|
|
4
|
+
import Java::org.cx4a.rsense.typing.annotation::ClassType
|
|
5
|
+
import Java::org.cx4a.rsense.typing.annotation::MethodType
|
|
6
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeAnnotation
|
|
7
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeAny
|
|
8
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeApplication
|
|
9
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeConstraint
|
|
10
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeExpression
|
|
11
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeIdentity
|
|
12
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeOptional
|
|
13
|
+
import Java::org.cx4a.rsense.typing.annotation::TypePragma
|
|
14
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeSplat
|
|
15
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeTuple
|
|
16
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeUnion
|
|
17
|
+
import Java::org.cx4a.rsense.typing.annotation::TypeVariable
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
module Rsense
|
|
2
|
+
module Typing
|
|
3
|
+
module Runtime
|
|
4
|
+
import Java::org.cx4a.rsense.typing.runtime::AliasMethod
|
|
5
|
+
import Java::org.cx4a.rsense.typing.runtime::AnnotationHelper
|
|
6
|
+
import Java::org.cx4a.rsense.typing.runtime::AnnotationResolver
|
|
7
|
+
import Java::org.cx4a.rsense.typing.runtime::Array
|
|
8
|
+
import Java::org.cx4a.rsense.typing.runtime::ClassTag
|
|
9
|
+
import Java::org.cx4a.rsense.typing.runtime::DefaultMethod
|
|
10
|
+
import Java::org.cx4a.rsense.typing.runtime::Hash
|
|
11
|
+
import Java::org.cx4a.rsense.typing.runtime::LoopTag
|
|
12
|
+
import Java::org.cx4a.rsense.typing.runtime::Method
|
|
13
|
+
import Java::org.cx4a.rsense.typing.runtime::MonomorphicObject
|
|
14
|
+
import Java::org.cx4a.rsense.typing.runtime::ObjectAllocator
|
|
15
|
+
import Java::org.cx4a.rsense.typing.runtime::PolymorphicObject
|
|
16
|
+
import Java::org.cx4a.rsense.typing.runtime::Proc
|
|
17
|
+
import Java::org.cx4a.rsense.typing.runtime::SpecialMethod
|
|
18
|
+
import Java::org.cx4a.rsense.typing.runtime::TypeVarMap
|
|
19
|
+
import Java::org.cx4a.rsense.typing.runtime::VertexHolder
|
|
20
|
+
RuntimeHelper = Java::OrgCx4aRsenseTypingRuntime::RuntimeHelper
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
module Rsense
|
|
2
|
+
module Typing
|
|
3
|
+
module Vertex
|
|
4
|
+
import Java::org.cx4a.rsense.typing.vertex::CallVertex
|
|
5
|
+
import Java::org.cx4a.rsense.typing.vertex::MultipleAsgnVertex
|
|
6
|
+
import Java::org.cx4a.rsense.typing.vertex::PassThroughVertex
|
|
7
|
+
import Java::org.cx4a.rsense.typing.vertex::SplatVertex
|
|
8
|
+
import Java::org.cx4a.rsense.typing.vertex::SValueVertex
|
|
9
|
+
import Java::org.cx4a.rsense.typing.vertex::ToAryVertex
|
|
10
|
+
import Java::org.cx4a.rsense.typing.vertex::TypeVarVertex
|
|
11
|
+
import Java::org.cx4a.rsense.typing.vertex::Vertex
|
|
12
|
+
import Java::org.cx4a.rsense.typing.vertex::YieldVertex
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|