inch 0.5.10 → 0.6.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/config/{nodejs.rb → javascript.rb} +2 -3
  4. data/lib/inch.rb +1 -1
  5. data/lib/inch/cli/command/options/base.rb +1 -1
  6. data/lib/inch/cli/command/output/base.rb +1 -1
  7. data/lib/inch/config.rb +4 -2
  8. data/lib/inch/language.rb +1 -1
  9. data/lib/inch/language/{nodejs → javascript}/code_object/base.rb +2 -2
  10. data/lib/inch/language/{nodejs → javascript}/code_object/class_object.rb +1 -1
  11. data/lib/inch/language/{nodejs → javascript}/code_object/function_object.rb +2 -2
  12. data/lib/inch/language/{nodejs → javascript}/code_object/function_parameter_object.rb +1 -1
  13. data/lib/inch/language/{nodejs → javascript}/code_object/member_object.rb +1 -1
  14. data/lib/inch/language/{nodejs → javascript}/code_object/module_object.rb +1 -1
  15. data/lib/inch/language/{nodejs → javascript}/evaluation/base.rb +2 -2
  16. data/lib/inch/language/{nodejs → javascript}/evaluation/class_object.rb +1 -1
  17. data/lib/inch/language/{nodejs → javascript}/evaluation/function_object.rb +1 -1
  18. data/lib/inch/language/{nodejs → javascript}/evaluation/member_object.rb +1 -1
  19. data/lib/inch/language/{nodejs → javascript}/evaluation/module_object.rb +1 -1
  20. data/lib/inch/language/javascript/import.rb +27 -0
  21. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc.rb +2 -2
  22. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/docstring.rb +1 -1
  23. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object.rb +6 -6
  24. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object/base.rb +2 -2
  25. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object/class_object.rb +1 -1
  26. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object/function_object.rb +2 -2
  27. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object/function_parameter_object.rb +1 -1
  28. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object/member_object.rb +1 -1
  29. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/object/module_object.rb +1 -1
  30. data/lib/inch/language/{nodejs → javascript}/provider/jsdoc/parser.rb +3 -3
  31. data/lib/inch/language/{nodejs → javascript}/roles/base.rb +1 -1
  32. data/lib/inch/language/{nodejs → javascript}/roles/function.rb +1 -1
  33. data/lib/inch/language/{nodejs → javascript}/roles/function_parameter.rb +1 -1
  34. data/lib/inch/language/{nodejs → javascript}/roles/member.rb +1 -1
  35. data/lib/inch/language/{nodejs → javascript}/roles/module.rb +1 -1
  36. data/lib/inch/language/{nodejs → javascript}/roles/object.rb +1 -1
  37. data/lib/inch/version.rb +1 -1
  38. data/test/fixtures/{nodejs → javascript}/inch_test/all.json +152 -152
  39. data/test/fixtures/ruby/simple/lib/directives.rb +21 -0
  40. data/test/unit/language/{nodejs → javascript}/code_object/function_object_test.rb +1 -1
  41. data/test/unit/language/{nodejs → javascript}/provider/jsdoc/docstring_test.rb +2 -2
  42. data/test/unit/language/ruby/code_object/method_object_test.rb +39 -10
  43. metadata +39 -39
  44. data/lib/inch/language/nodejs/import.rb +0 -27
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 72f3a96a1d7027c5f7e4f02377a3d2c7e6ab0483
4
- data.tar.gz: 9d37e5e3c38c2cd9e2e73a8d4346bc14056b9d01
3
+ metadata.gz: 2576ec3e34a40dd71b8a98c24d99a2a221774b5a
4
+ data.tar.gz: d5a9dc7b201840df3ebbc34f8ad5ab87ad0552d9
5
5
  SHA512:
6
- metadata.gz: c1c444e52a2a5c52b488fda70e7fe7d2997fdee57e23003964134f4d32c4e700e2ad711a9ae4ffb4fc028b266f82635a13f72039d0a0ad5114166f38e30d1aa8
7
- data.tar.gz: b634cae70beb91a1c6675d0cdac62bf6011a0b756476a04eee564808e32c5662a7403264ad6ceeb39c4b50e273d3a7b159187be00ce80c675b688794c61d10b9
6
+ metadata.gz: d4598a0be0972ccc7205f4a9dbde89ba86b61d7547c979ad1e7f4ef16fa7ef4f566c80c458c454302ef1252c48a5284356e9d34bc0b598a67e166a4e90ec9bc3
7
+ data.tar.gz: 6af39b0a5f329493e57bff20bec65f1a7eb84025a78aa4b24bfbe47b39156a065324be3ff0a5c99423e859da432a18db89fd104800debc59bb37a8419a9d0062
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.0
4
+
5
+ - NodeJS is renamed to JavaScript, which breaks backwards compatibility
6
+
3
7
  ## 0.5.9
4
8
 
5
9
  - NodeJS: Improve output of code object names and locations
@@ -1,7 +1,6 @@
1
- # NodeJS's configuration
2
- # Node will be treated as a separate programming language for now
1
+ # JavaScript's configuration
3
2
 
4
- Inch::Config.register(:nodejs) do
3
+ Inch::Config.register(:javascript) do
5
4
  codebase do
6
5
  object_provider :JSDoc
7
6
  include_files ['src/**/*.js']
data/lib/inch.rb CHANGED
@@ -16,5 +16,5 @@ require 'inch/language'
16
16
  require 'inch/config'
17
17
  require File.join(File.dirname(__FILE__), '..', 'config', 'base.rb')
18
18
  require File.join(File.dirname(__FILE__), '..', 'config', 'ruby.rb')
19
- require File.join(File.dirname(__FILE__), '..', 'config', 'nodejs.rb')
19
+ require File.join(File.dirname(__FILE__), '..', 'config', 'javascript.rb')
20
20
  require File.join(File.dirname(__FILE__), '..', 'config', 'elixir.rb')
@@ -130,7 +130,7 @@ module Inch
130
130
  exit
131
131
  end
132
132
  opts.on_tail('-l', '--language [LANGUAGE]',
133
- 'Set language (elixir|nodejs|ruby).') do |language|
133
+ 'Set language (elixir|javascript|ruby).') do |language|
134
134
  @language = language
135
135
  end
136
136
  opts.on_tail('-r', '--read-from-dump [FILE]',
@@ -19,7 +19,7 @@ module Inch
19
19
  include TraceHelper
20
20
 
21
21
  def display_name(object)
22
- if object.language == :nodejs
22
+ if object.language == :javascript
23
23
  object.fullname+" in #{object.filename.relative_path}".color(:dark)
24
24
  else
25
25
  object.fullname
data/lib/inch/config.rb CHANGED
@@ -41,8 +41,10 @@ module Inch
41
41
  end
42
42
 
43
43
  def namespace(language, submodule = nil)
44
- name = language.to_s.split('_').map { |w| w.capitalize }.join
45
- const = ::Inch::Language.const_get(name)
44
+ const_name = ::Inch::Language.constants.detect do |name|
45
+ name.to_s.downcase == language.to_s.downcase
46
+ end
47
+ const = ::Inch::Language.const_get(const_name)
46
48
  const = const.const_get(submodule) unless submodule.nil?
47
49
  const
48
50
  end
data/lib/inch/language.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  require 'inch/language/ruby/import'
2
2
  require 'inch/language/elixir/import'
3
- require 'inch/language/nodejs/import'
3
+ require 'inch/language/javascript/import'
@@ -2,7 +2,7 @@ require 'forwardable'
2
2
 
3
3
  module Inch
4
4
  module Language
5
- module Nodejs
5
+ module JavaScript
6
6
  # This is the base class for code object proxies.
7
7
  # Code object proxies are via an attributes Hash and provide all methods
8
8
  # necessary for the evaluation of its documentation.
@@ -11,7 +11,7 @@ module Inch
11
11
  module CodeObject
12
12
  class Base < Inch::CodeObject::Proxy
13
13
  def language
14
- :nodejs
14
+ :javascript
15
15
  end
16
16
 
17
17
  # @return [Boolean] if the current object is an alias for something
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module CodeObject
5
5
  # Proxy class for modules
6
6
  class ClassObject < ModuleObject
@@ -1,8 +1,8 @@
1
- require 'inch/language/nodejs/code_object/function_parameter_object'
1
+ require 'inch/language/javascript/code_object/function_parameter_object'
2
2
 
3
3
  module Inch
4
4
  module Language
5
- module Nodejs
5
+ module JavaScript
6
6
  module CodeObject
7
7
  # Proxy class for functions
8
8
  class FunctionObject < Base
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module CodeObject
5
5
  # Proxy class for method parameters
6
6
  class FunctionParameterObject
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module CodeObject
5
5
  # Proxy class for types
6
6
  class MemberObject < Base
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module CodeObject
5
5
  # Proxy class for modules
6
6
  class ModuleObject < Base
@@ -1,8 +1,8 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
- # Base class for all Nodejs related evaluations
5
+ # Base class for all JavaScript related evaluations
6
6
  #
7
7
  # @abstract
8
8
  class Base < Inch::Evaluation::Proxy
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  # Proxy class for classes
6
6
  class ClassObject < ModuleObject
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  # Proxy class for functions
6
6
  class FunctionObject < Base
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  # Proxy class for types
6
6
  class MemberObject < Base
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  # Proxy class for modules
6
6
  class ModuleObject < Base
@@ -0,0 +1,27 @@
1
+ module Inch
2
+ module Language
3
+ module JavaScript
4
+ end
5
+ end
6
+ end
7
+
8
+ require 'inch/language/javascript/provider/jsdoc'
9
+
10
+ require 'inch/language/javascript/code_object/base'
11
+ require 'inch/language/javascript/code_object/module_object'
12
+ require 'inch/language/javascript/code_object/class_object'
13
+ require 'inch/language/javascript/code_object/function_object'
14
+ require 'inch/language/javascript/code_object/member_object'
15
+
16
+ require 'inch/language/javascript/evaluation/base'
17
+ require 'inch/language/javascript/evaluation/module_object'
18
+ require 'inch/language/javascript/evaluation/class_object'
19
+ require 'inch/language/javascript/evaluation/function_object'
20
+ require 'inch/language/javascript/evaluation/member_object'
21
+
22
+ require 'inch/language/javascript/roles/base'
23
+ require 'inch/language/javascript/roles/object'
24
+ require 'inch/language/javascript/roles/module'
25
+ require 'inch/language/javascript/roles/function'
26
+ require 'inch/language/javascript/roles/function_parameter'
27
+ require 'inch/language/javascript/roles/member'
@@ -2,7 +2,7 @@ require 'json'
2
2
 
3
3
  module Inch
4
4
  module Language
5
- module Nodejs
5
+ module JavaScript
6
6
  module Provider
7
7
  # Parses the source tree (using JSDoc)
8
8
  module JSDoc
@@ -16,4 +16,4 @@ module Inch
16
16
  end
17
17
  end
18
18
 
19
- require 'inch/language/nodejs/provider/jsdoc/parser'
19
+ require 'inch/language/javascript/provider/jsdoc/parser'
@@ -1,7 +1,7 @@
1
1
 
2
2
  module Inch
3
3
  module Language
4
- module Nodejs
4
+ module JavaScript
5
5
  module Provider
6
6
  module JSDoc
7
7
  class Docstring < Ruby::Provider::YARD::Docstring
@@ -1,12 +1,12 @@
1
- require 'inch/language/nodejs/provider/jsdoc/object/base'
2
- require 'inch/language/nodejs/provider/jsdoc/object/function_object'
3
- require 'inch/language/nodejs/provider/jsdoc/object/module_object'
4
- require 'inch/language/nodejs/provider/jsdoc/object/class_object'
5
- require 'inch/language/nodejs/provider/jsdoc/object/member_object'
1
+ require 'inch/language/javascript/provider/jsdoc/object/base'
2
+ require 'inch/language/javascript/provider/jsdoc/object/function_object'
3
+ require 'inch/language/javascript/provider/jsdoc/object/module_object'
4
+ require 'inch/language/javascript/provider/jsdoc/object/class_object'
5
+ require 'inch/language/javascript/provider/jsdoc/object/member_object'
6
6
 
7
7
  module Inch
8
8
  module Language
9
- module Nodejs
9
+ module JavaScript
10
10
  module Provider
11
11
  module JSDoc
12
12
  # CodeObject::Provider::JSDoc::Object object represent code objects.
@@ -1,9 +1,9 @@
1
- require 'inch/language/nodejs/provider/jsdoc/docstring'
1
+ require 'inch/language/javascript/provider/jsdoc/docstring'
2
2
  require 'inch/utils/code_location'
3
3
 
4
4
  module Inch
5
5
  module Language
6
- module Nodejs
6
+ module JavaScript
7
7
  module Provider
8
8
  module JSDoc
9
9
  module Object
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Provider
5
5
  module JSDoc
6
6
  module Object
@@ -1,8 +1,8 @@
1
- require 'inch/language/nodejs/provider/jsdoc/object/function_parameter_object'
1
+ require 'inch/language/javascript/provider/jsdoc/object/function_parameter_object'
2
2
 
3
3
  module Inch
4
4
  module Language
5
- module Nodejs
5
+ module JavaScript
6
6
  module Provider
7
7
  module JSDoc
8
8
  module Object
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Provider
5
5
  module JSDoc
6
6
  module Object
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Provider
5
5
  module JSDoc
6
6
  module Object
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Provider
5
5
  module JSDoc
6
6
  module Object
@@ -1,9 +1,9 @@
1
1
  require 'json'
2
- require 'inch/language/nodejs/provider/jsdoc/object'
2
+ require 'inch/language/javascript/provider/jsdoc/object'
3
3
 
4
4
  module Inch
5
5
  module Language
6
- module Nodejs
6
+ module JavaScript
7
7
  module Provider
8
8
  module JSDoc
9
9
  # Parses the source tree (using JSDoc)
@@ -45,7 +45,7 @@ module Inch
45
45
 
46
46
  def parse_objects(_paths, _excluded, read_dump_file = nil)
47
47
  if read_dump_file.nil?
48
- fail 'NodeJS analysis only works with --read-from-dump.'
48
+ fail 'JavaScript analysis only works with --read-from-dump.'
49
49
  else
50
50
  output = File.read(read_dump_file, :encoding => 'utf-8')
51
51
  end
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  module Role
6
6
  # @abstract
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  module Role
6
6
  module Function
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  module Role
6
6
  # Roles assigned to method parameters
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  module Role
6
6
  # Roles assigned to members
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  module Role
6
6
  # Roles assigned to modules
@@ -1,6 +1,6 @@
1
1
  module Inch
2
2
  module Language
3
- module Nodejs
3
+ module JavaScript
4
4
  module Evaluation
5
5
  module Role
6
6
  # Roles assigned to all objects
data/lib/inch/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Inch
2
- VERSION = '0.5.10'
2
+ VERSION = '0.6.0.rc1'
3
3
  end
@@ -1,252 +1,252 @@
1
1
  {
2
- "args": [],
3
- "branch_name": "master",
4
- "client_name": "inchjs",
5
- "client_version": "0.1.4",
6
- "git_repo_url": "git@github.com:inch-ci/Hello-World-NodeJS.git",
7
- "language": "nodejs",
2
+ "args": [],
3
+ "branch_name": "master",
4
+ "client_name": "inchjs",
5
+ "client_version": "0.1.4",
6
+ "git_repo_url": "git@github.com:inch-ci/Hello-World-NodeJS.git",
7
+ "language": "javascript",
8
8
  "objects": [
9
9
  {
10
- "comment": "",
11
- "kind": "function",
12
- "longname": "InstanciatableClass",
10
+ "comment": "",
11
+ "kind": "function",
12
+ "longname": "InstanciatableClass",
13
13
  "meta": {
14
14
  "code": {
15
- "id": "astnode100000004",
16
- "name": "InstanciatableClass",
17
- "type": "FunctionExpression",
15
+ "id": "astnode100000004",
16
+ "name": "InstanciatableClass",
17
+ "type": "FunctionExpression",
18
18
  "value": "function"
19
- },
20
- "filename": "inch_test.js",
21
- "lineno": 4,
22
- "path": "/src",
19
+ },
20
+ "filename": "inch_test.js",
21
+ "lineno": 4,
22
+ "path": "/src",
23
23
  "range": [
24
- 20,
24
+ 20,
25
25
  55
26
26
  ]
27
- },
28
- "name": "InstanciatableClass",
29
- "scope": "global",
27
+ },
28
+ "name": "InstanciatableClass",
29
+ "scope": "global",
30
30
  "undocumented": true
31
- },
31
+ },
32
32
  {
33
- "comment": "",
34
- "kind": "function",
35
- "longname": "InstanciatableClass#render",
36
- "memberof": "InstanciatableClass",
33
+ "comment": "",
34
+ "kind": "function",
35
+ "longname": "InstanciatableClass#render",
36
+ "memberof": "InstanciatableClass",
37
37
  "meta": {
38
38
  "code": {
39
- "id": "astnode100000009",
40
- "name": "InstanciatableClass.prototype.render",
41
- "paramnames": [],
42
- "type": "FunctionExpression",
39
+ "id": "astnode100000009",
40
+ "name": "InstanciatableClass.prototype.render",
41
+ "paramnames": [],
42
+ "type": "FunctionExpression",
43
43
  "value": "function"
44
- },
45
- "filename": "inch_test.js",
46
- "lineno": 5,
47
- "path": "/src",
44
+ },
45
+ "filename": "inch_test.js",
46
+ "lineno": 5,
47
+ "path": "/src",
48
48
  "range": [
49
- 57,
49
+ 57,
50
50
  125
51
51
  ]
52
- },
53
- "name": "render",
54
- "scope": "instance",
52
+ },
53
+ "name": "render",
54
+ "scope": "instance",
55
55
  "undocumented": true
56
- },
56
+ },
57
57
  {
58
- "access": "private",
59
- "comment": "/**\n* @private\n*/",
60
- "kind": "function",
61
- "longname": "InchTest.generate_docs",
62
- "memberof": "InchTest",
58
+ "access": "private",
59
+ "comment": "/**\n* @private\n*/",
60
+ "kind": "function",
61
+ "longname": "InchTest.generate_docs",
62
+ "memberof": "InchTest",
63
63
  "meta": {
64
64
  "code": {
65
- "id": "astnode100000024",
66
- "name": "InchTest.generate_docs",
65
+ "id": "astnode100000024",
66
+ "name": "InchTest.generate_docs",
67
67
  "paramnames": [
68
- "project",
69
- "version",
70
- "args",
68
+ "project",
69
+ "version",
70
+ "args",
71
71
  "options"
72
- ],
73
- "type": "FunctionExpression",
72
+ ],
73
+ "type": "FunctionExpression",
74
74
  "value": "function"
75
- },
76
- "filename": "inch_test.js",
77
- "lineno": 13,
78
- "path": "/src",
75
+ },
76
+ "filename": "inch_test.js",
77
+ "lineno": 13,
78
+ "path": "/src",
79
79
  "range": [
80
- 165,
80
+ 165,
81
81
  236
82
82
  ]
83
- },
84
- "name": "generate_docs",
83
+ },
84
+ "name": "generate_docs",
85
85
  "scope": "static"
86
- },
86
+ },
87
87
  {
88
- "comment": "// Generate JSON documentation for the given modules",
89
- "kind": "function",
90
- "longname": "InchTest.Docs.Formatter.run",
91
- "memberof": "InchTest.Docs.Formatter",
88
+ "comment": "// Generate JSON documentation for the given modules",
89
+ "kind": "function",
90
+ "longname": "InchTest.Docs.Formatter.run",
91
+ "memberof": "InchTest.Docs.Formatter",
92
92
  "meta": {
93
93
  "code": {
94
- "id": "astnode100000042",
95
- "name": "run",
96
- "type": "FunctionExpression",
94
+ "id": "astnode100000042",
95
+ "name": "run",
96
+ "type": "FunctionExpression",
97
97
  "value": "function"
98
- },
99
- "filename": "inch_test.js",
100
- "lineno": 19,
101
- "path": "/src",
98
+ },
99
+ "filename": "inch_test.js",
100
+ "lineno": 19,
101
+ "path": "/src",
102
102
  "range": [
103
- 333,
103
+ 333,
104
104
  398
105
105
  ]
106
- },
107
- "name": "run",
108
- "scope": "static",
106
+ },
107
+ "name": "run",
108
+ "scope": "static",
109
109
  "undocumented": true
110
- },
110
+ },
111
111
  {
112
- "comment": "/**\n*\n* This function takes `param1` and `param2` as arguments.\n*\n* @param {Number} param1 A number from 0 to 26 that will result in a letter a-z\n* @param {String} param2 A text\n* @return {String} A character from a-z based on the input number n\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
113
- "description": "This function takes `param1` and `param2` as arguments.",
114
- "kind": "function",
115
- "longname": "InchTest.Functions.full_doc",
116
- "memberof": "InchTest.Functions",
112
+ "comment": "/**\n*\n* This function takes `param1` and `param2` as arguments.\n*\n* @param {Number} param1 A number from 0 to 26 that will result in a letter a-z\n* @param {String} param2 A text\n* @return {String} A character from a-z based on the input number n\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
113
+ "description": "This function takes `param1` and `param2` as arguments.",
114
+ "kind": "function",
115
+ "longname": "InchTest.Functions.full_doc",
116
+ "memberof": "InchTest.Functions",
117
117
  "meta": {
118
118
  "code": {
119
- "id": "astnode100000057",
120
- "name": "InchTest.Functions.full_doc",
119
+ "id": "astnode100000057",
120
+ "name": "InchTest.Functions.full_doc",
121
121
  "paramnames": [
122
- "param1",
122
+ "param1",
123
123
  "param2"
124
- ],
125
- "type": "FunctionExpression",
124
+ ],
125
+ "type": "FunctionExpression",
126
126
  "value": "function"
127
- },
128
- "filename": "inch_test.js",
129
- "lineno": 41,
130
- "path": "/src",
127
+ },
128
+ "filename": "inch_test.js",
129
+ "lineno": 41,
130
+ "path": "/src",
131
131
  "range": [
132
- 841,
132
+ 841,
133
133
  914
134
134
  ]
135
- },
136
- "name": "full_doc",
135
+ },
136
+ "name": "full_doc",
137
137
  "params": [
138
138
  {
139
- "description": "A number from 0 to 26 that will result in a letter a-z",
140
- "name": "param1",
139
+ "description": "A number from 0 to 26 that will result in a letter a-z",
140
+ "name": "param1",
141
141
  "type": {
142
142
  "names": [
143
143
  "Number"
144
144
  ]
145
145
  }
146
- },
146
+ },
147
147
  {
148
- "description": "A text",
149
- "name": "param2",
148
+ "description": "A text",
149
+ "name": "param2",
150
150
  "type": {
151
151
  "names": [
152
152
  "String"
153
153
  ]
154
154
  }
155
155
  }
156
- ],
156
+ ],
157
157
  "returns": [
158
158
  {
159
- "description": "A character from a-z based on the input number n\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
159
+ "description": "A character from a-z based on the input number n\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
160
160
  "type": {
161
161
  "names": [
162
162
  "String"
163
163
  ]
164
164
  }
165
165
  }
166
- ],
166
+ ],
167
167
  "scope": "static"
168
- },
168
+ },
169
169
  {
170
- "comment": "/**\n*\n* This function takes a `param1` and a second parameter that is never used\n* (maybe, because it is a callback or something like that). However, the\n* second param should impact the evaluation by Inch.\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
171
- "description": "This function takes a `param1` and a second parameter that is never used\n(maybe, because it is a callback or something like that). However, the\nsecond param should impact the evaluation by Inch.\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
172
- "kind": "function",
173
- "longname": "InchTest.Functions.full_doc_second_parameter_unnamed",
174
- "memberof": "InchTest.Functions",
170
+ "comment": "/**\n*\n* This function takes a `param1` and a second parameter that is never used\n* (maybe, because it is a callback or something like that). However, the\n* second param should impact the evaluation by Inch.\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
171
+ "description": "This function takes a `param1` and a second parameter that is never used\n(maybe, because it is a callback or something like that). However, the\nsecond param should impact the evaluation by Inch.\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
172
+ "kind": "function",
173
+ "longname": "InchTest.Functions.full_doc_second_parameter_unnamed",
174
+ "memberof": "InchTest.Functions",
175
175
  "meta": {
176
176
  "code": {
177
- "id": "astnode100000070",
178
- "name": "InchTest.Functions.full_doc_second_parameter_unnamed",
177
+ "id": "astnode100000070",
178
+ "name": "InchTest.Functions.full_doc_second_parameter_unnamed",
179
179
  "paramnames": [
180
- "param1",
180
+ "param1",
181
181
  "_"
182
- ],
183
- "type": "FunctionExpression",
182
+ ],
183
+ "type": "FunctionExpression",
184
184
  "value": "function"
185
- },
186
- "filename": "inch_test.js",
187
- "lineno": 57,
188
- "path": "/src",
185
+ },
186
+ "filename": "inch_test.js",
187
+ "lineno": 57,
188
+ "path": "/src",
189
189
  "range": [
190
- 1271,
190
+ 1271,
191
191
  1364
192
192
  ]
193
- },
194
- "name": "full_doc_second_parameter_unnamed",
193
+ },
194
+ "name": "full_doc_second_parameter_unnamed",
195
195
  "scope": "static"
196
- },
196
+ },
197
197
  {
198
- "comment": "/**\n*\n* This function takes no arguments.\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
199
- "description": "This function takes no arguments.\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
200
- "kind": "function",
201
- "longname": "InchTest.CodeExamples.single_code_example",
202
- "memberof": "InchTest.CodeExamples",
198
+ "comment": "/**\n*\n* This function takes no arguments.\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
199
+ "description": "This function takes no arguments.\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
200
+ "kind": "function",
201
+ "longname": "InchTest.CodeExamples.single_code_example",
202
+ "memberof": "InchTest.CodeExamples",
203
203
  "meta": {
204
204
  "code": {
205
- "id": "astnode100000088",
206
- "name": "single_code_example",
207
- "type": "FunctionExpression",
205
+ "id": "astnode100000088",
206
+ "name": "single_code_example",
207
+ "type": "FunctionExpression",
208
208
  "value": "function"
209
- },
210
- "filename": "inch_test.js",
211
- "lineno": 74,
212
- "path": "/src",
209
+ },
210
+ "filename": "inch_test.js",
211
+ "lineno": 74,
212
+ "path": "/src",
213
213
  "range": [
214
- 1609,
214
+ 1609,
215
215
  1665
216
216
  ]
217
- },
218
- "name": "single_code_example",
217
+ },
218
+ "name": "single_code_example",
219
219
  "scope": "static"
220
- },
220
+ },
221
221
  {
222
- "comment": "/**\n*\n* This function takes no arguments.\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*\n* In general, `underscore` can be thought of as the reverse ...\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
223
- "description": "This function takes no arguments.\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"\n\nIn general, `underscore` can be thought of as the reverse ...\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
224
- "kind": "function",
225
- "longname": "InchTest.CodeExamples.multiple_code_examples",
226
- "memberof": "InchTest.CodeExamples",
222
+ "comment": "/**\n*\n* This function takes no arguments.\n*\n* Examples:\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*\n* In general, `underscore` can be thought of as the reverse ...\n*\n* > InchTest.Naming.resource_name(MyApp.User)\n* \"user\"\n* > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n* \"user\"\n*/",
223
+ "description": "This function takes no arguments.\n\nExamples:\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"\n\nIn general, `underscore` can be thought of as the reverse ...\n\n > InchTest.Naming.resource_name(MyApp.User)\n \"user\"\n > InchTest.Naming.resource_name(MyApp.UserView, \"View\")\n \"user\"",
224
+ "kind": "function",
225
+ "longname": "InchTest.CodeExamples.multiple_code_examples",
226
+ "memberof": "InchTest.CodeExamples",
227
227
  "meta": {
228
228
  "code": {
229
- "id": "astnode100000093",
230
- "name": "multiple_code_examples",
231
- "type": "FunctionExpression",
229
+ "id": "astnode100000093",
230
+ "name": "multiple_code_examples",
231
+ "type": "FunctionExpression",
232
232
  "value": "function"
233
- },
234
- "filename": "inch_test.js",
235
- "lineno": 95,
236
- "path": "/src",
233
+ },
234
+ "filename": "inch_test.js",
235
+ "lineno": 95,
236
+ "path": "/src",
237
237
  "range": [
238
- 2094,
238
+ 2094,
239
239
  2153
240
240
  ]
241
- },
242
- "name": "multiple_code_examples",
241
+ },
242
+ "name": "multiple_code_examples",
243
243
  "scope": "static"
244
- },
244
+ },
245
245
  {
246
246
  "files": [
247
247
  "/home/rf/devel/Hello-World-NodeJS/src/inch_test.js"
248
- ],
249
- "kind": "package",
248
+ ],
249
+ "kind": "package",
250
250
  "longname": "package:undefined"
251
251
  }
252
252
  ]
@@ -6,3 +6,24 @@ class Attributes
6
6
  # @return [String] Username (from Devise)
7
7
  attr_accessor :username
8
8
  end
9
+
10
+
11
+ # Representation of attributes of a user in the database
12
+ #
13
+ class AttributesAccessor
14
+ attr_accessor :username
15
+ # @!attribute email
16
+ # @return [String] E-mail address (from Devise)
17
+ attr_accessor :email
18
+ end
19
+
20
+
21
+ # Representation of attributes of a user in the database
22
+ #
23
+ class AttributesStruct < Struct.new(:email, :username)
24
+ # @!attribute email
25
+ # @return [String] E-mail address (from Devise)
26
+ # @!attribute username
27
+ # @return [String] Username (from Devise)
28
+ end
29
+
@@ -2,7 +2,7 @@ require File.expand_path(File.dirname(__FILE__) + '/../../../../test_helper')
2
2
 
3
3
  describe ::Inch::Language::Elixir::CodeObject::FunctionObject do
4
4
  before do
5
- @codebase = fresh_codebase(:nodejs, :inch_test, 'all.json')
5
+ @codebase = fresh_codebase(:javascript, :inch_test, 'all.json')
6
6
  @objects = @codebase.objects
7
7
  end
8
8
 
@@ -1,7 +1,7 @@
1
1
  require File.expand_path(File.dirname(__FILE__) + '/../../../../../test_helper')
2
2
 
3
- describe ::Inch::Language::Nodejs::Provider::JSDoc::Docstring do
4
- let(:described_class) { ::Inch::Language::Nodejs::Provider::JSDoc::Docstring }
3
+ describe ::Inch::Language::JavaScript::Provider::JSDoc::Docstring do
4
+ let(:described_class) { ::Inch::Language::JavaScript::Provider::JSDoc::Docstring }
5
5
 
6
6
  #
7
7
  # JSDoc compatibility
@@ -292,19 +292,48 @@ describe ::Inch::Language::Ruby::CodeObject::MethodObject do
292
292
  end
293
293
 
294
294
  describe 'YARDs @!attribute directive on a class' do
295
- #
296
- it 'should work as a reader' do
297
- m = @objects.find('Attributes#email')
298
- refute_equal 0, m.score
299
- refute m.undocumented?
295
+ describe "implemented as virtual attribute" do
296
+ it 'should work as a reader' do
297
+ m = @objects.find('Attributes#email')
298
+ refute_equal 0, m.score
299
+ refute m.undocumented?
300
+ end
301
+
302
+ it 'should work as a writer' do
303
+ m = @objects.find('Attributes#email=')
304
+ refute_equal 0, m.score
305
+ # refute m.undocumented?
306
+ # NOTE: this is undocumented since there is no original_docstring
307
+ end
300
308
  end
301
309
 
302
- it 'should work as a writer' do
303
- m = @objects.find('Attributes#email=')
304
- refute_equal 0, m.score
305
- # refute m.undocumented?
306
- # NOTE: this is undocumented since there is no original_docstring
310
+ describe "used inside the class right before accessor macro" do
311
+ it 'should work as a reader' do
312
+ m = @objects.find('AttributesAccessor#email')
313
+ refute_equal 0, m.score
314
+ refute m.undocumented?
315
+ end
316
+
317
+ it 'should work as a writer' do
318
+ m = @objects.find('AttributesAccessor#email=')
319
+ refute_equal 0, m.score
320
+ end
321
+ end
322
+
323
+
324
+ describe "used inside a struct" do
325
+ it 'should work as a reader' do
326
+ m = @objects.find('AttributesStruct#email')
327
+ refute_equal 0, m.score
328
+ refute m.undocumented?
329
+ end
330
+
331
+ it 'should work as a writer' do
332
+ m = @objects.find('AttributesStruct#email=')
333
+ refute_equal 0, m.score
334
+ end
307
335
  end
336
+
308
337
  end
309
338
 
310
339
  describe 'YARDs @overload tag on methods' do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inch
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.10
4
+ version: 0.6.0.rc1
5
5
  platform: ruby
6
6
  authors:
7
7
  - René Föhring
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-12 00:00:00.000000000 Z
11
+ date: 2015-01-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -133,7 +133,7 @@ files:
133
133
  - config/.inch.yml.sample
134
134
  - config/base.rb
135
135
  - config/elixir.rb
136
- - config/nodejs.rb
136
+ - config/javascript.rb
137
137
  - config/ruby.rb
138
138
  - inch.gemspec
139
139
  - lib/inch.rb
@@ -234,34 +234,34 @@ files:
234
234
  - lib/inch/language/elixir/roles/module.rb
235
235
  - lib/inch/language/elixir/roles/object.rb
236
236
  - lib/inch/language/elixir/roles/type.rb
237
- - lib/inch/language/nodejs/code_object/base.rb
238
- - lib/inch/language/nodejs/code_object/class_object.rb
239
- - lib/inch/language/nodejs/code_object/function_object.rb
240
- - lib/inch/language/nodejs/code_object/function_parameter_object.rb
241
- - lib/inch/language/nodejs/code_object/member_object.rb
242
- - lib/inch/language/nodejs/code_object/module_object.rb
243
- - lib/inch/language/nodejs/evaluation/base.rb
244
- - lib/inch/language/nodejs/evaluation/class_object.rb
245
- - lib/inch/language/nodejs/evaluation/function_object.rb
246
- - lib/inch/language/nodejs/evaluation/member_object.rb
247
- - lib/inch/language/nodejs/evaluation/module_object.rb
248
- - lib/inch/language/nodejs/import.rb
249
- - lib/inch/language/nodejs/provider/jsdoc.rb
250
- - lib/inch/language/nodejs/provider/jsdoc/docstring.rb
251
- - lib/inch/language/nodejs/provider/jsdoc/object.rb
252
- - lib/inch/language/nodejs/provider/jsdoc/object/base.rb
253
- - lib/inch/language/nodejs/provider/jsdoc/object/class_object.rb
254
- - lib/inch/language/nodejs/provider/jsdoc/object/function_object.rb
255
- - lib/inch/language/nodejs/provider/jsdoc/object/function_parameter_object.rb
256
- - lib/inch/language/nodejs/provider/jsdoc/object/member_object.rb
257
- - lib/inch/language/nodejs/provider/jsdoc/object/module_object.rb
258
- - lib/inch/language/nodejs/provider/jsdoc/parser.rb
259
- - lib/inch/language/nodejs/roles/base.rb
260
- - lib/inch/language/nodejs/roles/function.rb
261
- - lib/inch/language/nodejs/roles/function_parameter.rb
262
- - lib/inch/language/nodejs/roles/member.rb
263
- - lib/inch/language/nodejs/roles/module.rb
264
- - lib/inch/language/nodejs/roles/object.rb
237
+ - lib/inch/language/javascript/code_object/base.rb
238
+ - lib/inch/language/javascript/code_object/class_object.rb
239
+ - lib/inch/language/javascript/code_object/function_object.rb
240
+ - lib/inch/language/javascript/code_object/function_parameter_object.rb
241
+ - lib/inch/language/javascript/code_object/member_object.rb
242
+ - lib/inch/language/javascript/code_object/module_object.rb
243
+ - lib/inch/language/javascript/evaluation/base.rb
244
+ - lib/inch/language/javascript/evaluation/class_object.rb
245
+ - lib/inch/language/javascript/evaluation/function_object.rb
246
+ - lib/inch/language/javascript/evaluation/member_object.rb
247
+ - lib/inch/language/javascript/evaluation/module_object.rb
248
+ - lib/inch/language/javascript/import.rb
249
+ - lib/inch/language/javascript/provider/jsdoc.rb
250
+ - lib/inch/language/javascript/provider/jsdoc/docstring.rb
251
+ - lib/inch/language/javascript/provider/jsdoc/object.rb
252
+ - lib/inch/language/javascript/provider/jsdoc/object/base.rb
253
+ - lib/inch/language/javascript/provider/jsdoc/object/class_object.rb
254
+ - lib/inch/language/javascript/provider/jsdoc/object/function_object.rb
255
+ - lib/inch/language/javascript/provider/jsdoc/object/function_parameter_object.rb
256
+ - lib/inch/language/javascript/provider/jsdoc/object/member_object.rb
257
+ - lib/inch/language/javascript/provider/jsdoc/object/module_object.rb
258
+ - lib/inch/language/javascript/provider/jsdoc/parser.rb
259
+ - lib/inch/language/javascript/roles/base.rb
260
+ - lib/inch/language/javascript/roles/function.rb
261
+ - lib/inch/language/javascript/roles/function_parameter.rb
262
+ - lib/inch/language/javascript/roles/member.rb
263
+ - lib/inch/language/javascript/roles/module.rb
264
+ - lib/inch/language/javascript/roles/object.rb
265
265
  - lib/inch/language/ruby/code_object/base.rb
266
266
  - lib/inch/language/ruby/code_object/class_object.rb
267
267
  - lib/inch/language/ruby/code_object/class_variable_object.rb
@@ -311,7 +311,7 @@ files:
311
311
  - lib/inch/utils/weighted_list.rb
312
312
  - lib/inch/version.rb
313
313
  - test/fixtures/elixir/inch_test/all.json
314
- - test/fixtures/nodejs/inch_test/all.json
314
+ - test/fixtures/javascript/inch_test/all.json
315
315
  - test/fixtures/ruby/alias_cycle/lib/alias.rb
316
316
  - test/fixtures/ruby/code_examples/lib/foo.rb
317
317
  - test/fixtures/ruby/diff1/lib/diff1.rb
@@ -370,8 +370,8 @@ files:
370
370
  - test/unit/evaluation/role_test.rb
371
371
  - test/unit/language/elixir/code_object/function_object_test.rb
372
372
  - test/unit/language/elixir/code_object/module_object_test.rb
373
- - test/unit/language/nodejs/code_object/function_object_test.rb
374
- - test/unit/language/nodejs/provider/jsdoc/docstring_test.rb
373
+ - test/unit/language/javascript/code_object/function_object_test.rb
374
+ - test/unit/language/javascript/provider/jsdoc/docstring_test.rb
375
375
  - test/unit/language/ruby/code_object/alias_test.rb
376
376
  - test/unit/language/ruby/code_object/method_object_test.rb
377
377
  - test/unit/language/ruby/provider/yard/docstring_test.rb
@@ -396,9 +396,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
396
396
  version: '0'
397
397
  required_rubygems_version: !ruby/object:Gem::Requirement
398
398
  requirements:
399
- - - ">="
399
+ - - ">"
400
400
  - !ruby/object:Gem::Version
401
- version: '0'
401
+ version: 1.3.1
402
402
  requirements: []
403
403
  rubyforge_project:
404
404
  rubygems_version: 2.2.2
@@ -407,7 +407,7 @@ specification_version: 4
407
407
  summary: Documentation measurement tool for Ruby
408
408
  test_files:
409
409
  - test/fixtures/elixir/inch_test/all.json
410
- - test/fixtures/nodejs/inch_test/all.json
410
+ - test/fixtures/javascript/inch_test/all.json
411
411
  - test/fixtures/ruby/alias_cycle/lib/alias.rb
412
412
  - test/fixtures/ruby/code_examples/lib/foo.rb
413
413
  - test/fixtures/ruby/diff1/lib/diff1.rb
@@ -466,8 +466,8 @@ test_files:
466
466
  - test/unit/evaluation/role_test.rb
467
467
  - test/unit/language/elixir/code_object/function_object_test.rb
468
468
  - test/unit/language/elixir/code_object/module_object_test.rb
469
- - test/unit/language/nodejs/code_object/function_object_test.rb
470
- - test/unit/language/nodejs/provider/jsdoc/docstring_test.rb
469
+ - test/unit/language/javascript/code_object/function_object_test.rb
470
+ - test/unit/language/javascript/provider/jsdoc/docstring_test.rb
471
471
  - test/unit/language/ruby/code_object/alias_test.rb
472
472
  - test/unit/language/ruby/code_object/method_object_test.rb
473
473
  - test/unit/language/ruby/provider/yard/docstring_test.rb
@@ -1,27 +0,0 @@
1
- module Inch
2
- module Language
3
- module Nodejs
4
- end
5
- end
6
- end
7
-
8
- require 'inch/language/nodejs/provider/jsdoc'
9
-
10
- require 'inch/language/nodejs/code_object/base'
11
- require 'inch/language/nodejs/code_object/module_object'
12
- require 'inch/language/nodejs/code_object/class_object'
13
- require 'inch/language/nodejs/code_object/function_object'
14
- require 'inch/language/nodejs/code_object/member_object'
15
-
16
- require 'inch/language/nodejs/evaluation/base'
17
- require 'inch/language/nodejs/evaluation/module_object'
18
- require 'inch/language/nodejs/evaluation/class_object'
19
- require 'inch/language/nodejs/evaluation/function_object'
20
- require 'inch/language/nodejs/evaluation/member_object'
21
-
22
- require 'inch/language/nodejs/roles/base'
23
- require 'inch/language/nodejs/roles/object'
24
- require 'inch/language/nodejs/roles/module'
25
- require 'inch/language/nodejs/roles/function'
26
- require 'inch/language/nodejs/roles/function_parameter'
27
- require 'inch/language/nodejs/roles/member'