summaryrefslogtreecommitdiff
path: root/ast.c
diff options
context:
space:
mode:
Diffstat (limited to 'ast.c')
-rw-r--r--ast.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/ast.c b/ast.c
index 33e7ba4c8c..afed691a7d 100644
--- a/ast.c
+++ b/ast.c
@@ -200,6 +200,23 @@ script_lines(VALUE path)
return lines;
}
+/*
+ * call-seq:
+ * RubyVM::AbstractSyntaxTree.of(proc) -> RubyVM::AbstractSyntaxTree::Node
+ * RubyVM::AbstractSyntaxTree.of(method) -> RubyVM::AbstractSyntaxTree::Node
+ *
+ * Returns AST nodes of the given proc or method.
+ *
+ * RubyVM::AbstractSyntaxTree.of(proc {1 + 2})
+ * # => #<RubyVM::AbstractSyntaxTree::Node(NODE_SCOPE(0) 1:35, 1:42): >
+ *
+ * def hello
+ * puts "hello, world"
+ * end
+ *
+ * RubyVM::AbstractSyntaxTree.of(method(:hello))
+ * # => #<RubyVM::AbstractSyntaxTree::Node(NODE_SCOPE(0) 1:0, 3:3): >
+ */
static VALUE
rb_ast_s_of(VALUE module, VALUE body)
{