astkit 0.1.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.
Files changed (110) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +11 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +7 -0
  5. data/CODE_OF_CONDUCT.md +74 -0
  6. data/Gemfile +4 -0
  7. data/Gemfile.lock +35 -0
  8. data/LICENSE.txt +21 -0
  9. data/README.md +43 -0
  10. data/Rakefile +6 -0
  11. data/astkit.gemspec +28 -0
  12. data/bin/console +14 -0
  13. data/bin/setup +8 -0
  14. data/lib/astkit.rb +703 -0
  15. data/lib/astkit/node.rb +14 -0
  16. data/lib/astkit/node/alias.rb +13 -0
  17. data/lib/astkit/node/and.rb +13 -0
  18. data/lib/astkit/node/args.rb +15 -0
  19. data/lib/astkit/node/argspush.rb +13 -0
  20. data/lib/astkit/node/array.rb +12 -0
  21. data/lib/astkit/node/attrasgn.rb +14 -0
  22. data/lib/astkit/node/back_ref.rb +12 -0
  23. data/lib/astkit/node/block.rb +12 -0
  24. data/lib/astkit/node/break.rb +9 -0
  25. data/lib/astkit/node/call.rb +14 -0
  26. data/lib/astkit/node/case.rb +13 -0
  27. data/lib/astkit/node/case2.rb +12 -0
  28. data/lib/astkit/node/cdecl.rb +14 -0
  29. data/lib/astkit/node/class.rb +14 -0
  30. data/lib/astkit/node/colon2.rb +13 -0
  31. data/lib/astkit/node/colon3.rb +12 -0
  32. data/lib/astkit/node/const.rb +12 -0
  33. data/lib/astkit/node/cvar.rb +12 -0
  34. data/lib/astkit/node/cvasgn.rb +13 -0
  35. data/lib/astkit/node/dasgn.rb +13 -0
  36. data/lib/astkit/node/dasgn_curr.rb +13 -0
  37. data/lib/astkit/node/defined.rb +12 -0
  38. data/lib/astkit/node/defn.rb +13 -0
  39. data/lib/astkit/node/defs.rb +14 -0
  40. data/lib/astkit/node/dot2.rb +13 -0
  41. data/lib/astkit/node/dot3.rb +13 -0
  42. data/lib/astkit/node/dregx.rb +13 -0
  43. data/lib/astkit/node/dstr.rb +14 -0
  44. data/lib/astkit/node/dsym.rb +13 -0
  45. data/lib/astkit/node/dvar.rb +12 -0
  46. data/lib/astkit/node/dxstr.rb +14 -0
  47. data/lib/astkit/node/ensure.rb +13 -0
  48. data/lib/astkit/node/errinfo.rb +9 -0
  49. data/lib/astkit/node/evstr.rb +12 -0
  50. data/lib/astkit/node/false.rb +12 -0
  51. data/lib/astkit/node/fcall.rb +13 -0
  52. data/lib/astkit/node/flip2.rb +13 -0
  53. data/lib/astkit/node/flip3.rb +13 -0
  54. data/lib/astkit/node/for.rb +13 -0
  55. data/lib/astkit/node/gasgn.rb +13 -0
  56. data/lib/astkit/node/gvar.rb +12 -0
  57. data/lib/astkit/node/hash.rb +12 -0
  58. data/lib/astkit/node/iasgn.rb +13 -0
  59. data/lib/astkit/node/if.rb +14 -0
  60. data/lib/astkit/node/iter.rb +13 -0
  61. data/lib/astkit/node/ivar.rb +12 -0
  62. data/lib/astkit/node/kw_arg.rb +13 -0
  63. data/lib/astkit/node/lambda.rb +12 -0
  64. data/lib/astkit/node/lasgn.rb +13 -0
  65. data/lib/astkit/node/lit.rb +12 -0
  66. data/lib/astkit/node/lvar.rb +12 -0
  67. data/lib/astkit/node/masgn.rb +14 -0
  68. data/lib/astkit/node/match.rb +12 -0
  69. data/lib/astkit/node/match2.rb +13 -0
  70. data/lib/astkit/node/match3.rb +13 -0
  71. data/lib/astkit/node/module.rb +13 -0
  72. data/lib/astkit/node/nbegin.rb +12 -0
  73. data/lib/astkit/node/next.rb +9 -0
  74. data/lib/astkit/node/nil.rb +12 -0
  75. data/lib/astkit/node/nth_ref.rb +12 -0
  76. data/lib/astkit/node/once.rb +12 -0
  77. data/lib/astkit/node/op_asgn1.rb +15 -0
  78. data/lib/astkit/node/op_asgn2.rb +15 -0
  79. data/lib/astkit/node/op_asgn_and.rb +13 -0
  80. data/lib/astkit/node/op_asgn_or.rb +13 -0
  81. data/lib/astkit/node/op_cdecl.rb +14 -0
  82. data/lib/astkit/node/opcall.rb +14 -0
  83. data/lib/astkit/node/or.rb +13 -0
  84. data/lib/astkit/node/qcall.rb +14 -0
  85. data/lib/astkit/node/redo.rb +9 -0
  86. data/lib/astkit/node/resbody.rb +14 -0
  87. data/lib/astkit/node/rescue.rb +14 -0
  88. data/lib/astkit/node/retry.rb +9 -0
  89. data/lib/astkit/node/return.rb +9 -0
  90. data/lib/astkit/node/sclass.rb +13 -0
  91. data/lib/astkit/node/scope.rb +14 -0
  92. data/lib/astkit/node/self.rb +9 -0
  93. data/lib/astkit/node/splat.rb +12 -0
  94. data/lib/astkit/node/str.rb +12 -0
  95. data/lib/astkit/node/super.rb +12 -0
  96. data/lib/astkit/node/true.rb +12 -0
  97. data/lib/astkit/node/undef.rb +12 -0
  98. data/lib/astkit/node/unless.rb +14 -0
  99. data/lib/astkit/node/until.rb +13 -0
  100. data/lib/astkit/node/valias.rb +13 -0
  101. data/lib/astkit/node/values.rb +12 -0
  102. data/lib/astkit/node/vcall.rb +12 -0
  103. data/lib/astkit/node/when.rb +14 -0
  104. data/lib/astkit/node/while.rb +13 -0
  105. data/lib/astkit/node/xstr.rb +12 -0
  106. data/lib/astkit/node/yield.rb +9 -0
  107. data/lib/astkit/node/zarray.rb +12 -0
  108. data/lib/astkit/node/zsuper.rb +9 -0
  109. data/lib/astkit/version.rb +3 -0
  110. metadata +193 -0
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ attr_reader :type, :children, :first_column, :first_lineno, :last_column, :last_lineno
4
+
5
+ def initialize(node)
6
+ @type = node.type
7
+ @children = node.children
8
+ @first_column = node.first_column
9
+ @first_lineno = node.first_lineno
10
+ @last_column = node.last_column
11
+ @last_lineno = node.last_lineno
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class ALIAS < Node
4
+ attr_reader :new_name, :old_name
5
+
6
+ def initialize(node:, new_name:, old_name:)
7
+ super(node)
8
+ @new_name = new_name
9
+ @old_name = old_name
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class AND < Node
4
+ attr_reader :left, :right
5
+
6
+ def initialize(node:, left:, right:)
7
+ super(node)
8
+ @left = left
9
+ @right = right
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class ARGS < Node
4
+ attr_reader :parameter_count, :rest_argument, :keyword_arguments, :block_argument
5
+
6
+ def initialize(node:, parameter_count:, rest_argument:, keyword_arguments:, block_argument:)
7
+ super(node)
8
+ @parameter_count = parameter_count
9
+ @rest_argument = rest_argument
10
+ @keyword_arguments = keyword_arguments
11
+ @block_argument = block_argument
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class ARGSPUSH < Node
4
+ attr_reader :array, :element
5
+
6
+ def initialize(node:, array:, element:)
7
+ super(node)
8
+ @array = array
9
+ @element = element
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class ARRAY < Node
4
+ attr_reader :elements
5
+
6
+ def initialize(node:, elements:)
7
+ super(node)
8
+ @elements = elements
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class ATTRASGN < Node
4
+ attr_reader :receiver, :method_id, :arguments
5
+
6
+ def initialize(node:, receiver:, method_id:, arguments:)
7
+ super(node)
8
+ @receiver = receiver
9
+ @method_id = method_id
10
+ @arguments = arguments
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class BACK_REF < Node
4
+ attr_reader :name
5
+
6
+ def initialize(node:, name:)
7
+ super(node)
8
+ @name = name
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class BLOCK < Node
4
+ attr_reader :statements
5
+
6
+ def initialize(node:, statements:)
7
+ super(node)
8
+ @statements = statements
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class BREAK < Node
4
+ def initialize(node:)
5
+ super(node)
6
+ end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CALL < Node
4
+ attr_reader :receiver, :method_id, :arguments
5
+
6
+ def initialize(node:, receiver:, method_id:, arguments:)
7
+ super(node)
8
+ @receiver = receiver
9
+ @method_id = method_id
10
+ @arguments = arguments
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CASE < Node
4
+ attr_reader :expression, :case_clauses
5
+
6
+ def initialize(node:, expression:, case_clauses:)
7
+ super(node)
8
+ @expression = expression
9
+ @case_clauses = case_clauses
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CASE2 < Node
4
+ attr_reader :case_clauses
5
+
6
+ def initialize(node:, case_clauses:)
7
+ super(node)
8
+ @case_clauses = case_clauses
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CDECL < Node
4
+ attr_reader :extension, :name, :value
5
+
6
+ def initialize(node:, extension: nil, name:, value:)
7
+ super(node)
8
+ @extension = extension
9
+ @name = name
10
+ @value = value
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CLASS < Node
4
+ attr_reader :path, :superclass, :body
5
+
6
+ def initialize(node:, path:, superclass:, body:)
7
+ super(node)
8
+ @path = path
9
+ @superclass = superclass
10
+ @body = body
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class COLON2 < Node
4
+ attr_reader :receiver, :name
5
+
6
+ def initialize(node:, receiver:, name:)
7
+ super(node)
8
+ @receiver = receiver
9
+ @name = name
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class COLON3 < Node
4
+ attr_reader :name
5
+
6
+ def initialize(node:, name:)
7
+ super(node)
8
+ @name = name
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CONST < Node
4
+ attr_reader :name
5
+
6
+ def initialize(node:, name:)
7
+ super(node)
8
+ @name = name
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CVAR < Node
4
+ attr_reader :name
5
+
6
+ def initialize(node:, name:)
7
+ super(node)
8
+ @name = name
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class CVASGN < Node
4
+ attr_reader :name, :value
5
+
6
+ def initialize(node:, name:, value:)
7
+ super(node)
8
+ @name = name
9
+ @value = value
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DASGN < Node
4
+ attr_reader :name, :value
5
+
6
+ def initialize(node:, name:, value:)
7
+ super(node)
8
+ @name = name
9
+ @value = value
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DASGN_CURR < Node
4
+ attr_reader :name, :value
5
+
6
+ def initialize(node:, name:, value:)
7
+ super(node)
8
+ @name = name
9
+ @value = value
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,12 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DEFINED < Node
4
+ attr_reader :expression
5
+
6
+ def initialize(node:, expression:)
7
+ super(node)
8
+ @expression = expression
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DEFN < Node
4
+ attr_reader :method_id, :method_definition
5
+
6
+ def initialize(node:, method_id:, method_definition:)
7
+ super(node)
8
+ @method_id = method_id
9
+ @method_definition = method_definition
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DEFS < Node
4
+ attr_reader :receiver, :name, :body
5
+
6
+ def initialize(node:, receiver:, name:, body:)
7
+ super(node)
8
+ @receiver = receiver
9
+ @name = name
10
+ @body = body
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DOT2 < Node
4
+ attr_reader :begin, :end
5
+
6
+ def initialize(node:, nd_begin:, nd_end:)
7
+ super(node)
8
+ @begin = nd_begin
9
+ @end = nd_end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DOT3 < Node
4
+ attr_reader :begin, :end
5
+
6
+ def initialize(node:, nd_begin:, nd_end:)
7
+ super(node)
8
+ @begin = nd_begin
9
+ @end = nd_end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DREGX < Node
4
+ attr_reader :interpolation, :tail_str
5
+
6
+ def initialize(node:, interpolation:, tail_str:)
7
+ super(node)
8
+ @interpolation = interpolation
9
+ @tail_str = tail_str
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DSTR < Node
4
+ attr_reader :pre_str, :interpolation, :tail_str
5
+
6
+ def initialize(node:, pre_str:, interpolation:, tail_str:)
7
+ super(node)
8
+ @pre_str = pre_str
9
+ @interpolation = interpolation
10
+ @tail_str = tail_str
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ class AbstractSyntaxTreeKit
2
+ class Node
3
+ class DSYM < Node
4
+ attr_reader :interpolation, :tail_str
5
+
6
+ def initialize(node:, interpolation:, tail_str:)
7
+ super(node)
8
+ @interpolation = interpolation
9
+ @tail_str = tail_str
10
+ end
11
+ end
12
+ end
13
+ end