summaryrefslogtreecommitdiffhomepage
path: root/lib
diff options
context:
space:
mode:
authorSeba Gamboa <[email protected]>2015-09-24 12:40:55 -0300
committerSeba Gamboa <[email protected]>2015-09-24 12:40:55 -0300
commit36407e1eb5c274f5e19b0f55114d4c66f5de7753 (patch)
treeebf383d6c8a207884323aec1486a0e4b2fb28b71 /lib
parent7b633663385725c6665118dc5fc014c26e7ffc04 (diff)
downloadyard-mruby-36407e1eb5c274f5e19b0f55114d4c66f5de7753.tar.gz
yard-mruby-36407e1eb5c274f5e19b0f55114d4c66f5de7753.zip
Move MRuby c Handlers into YARD::MRuby and disable defaults
Diffstat (limited to 'lib')
-rw-r--r--lib/yard/handlers.rb2
-rw-r--r--lib/yard/handlers/c.rb6
-rw-r--r--lib/yard/handlers/c/mruby_base.rb47
-rw-r--r--lib/yard/mruby.rb1
-rw-r--r--lib/yard/mruby/handlers.rb1
-rw-r--r--lib/yard/mruby/handlers/c.rb6
-rw-r--r--lib/yard/mruby/handlers/c/base.rb51
-rw-r--r--lib/yard/mruby/handlers/c/class_handler.rb (renamed from lib/yard/handlers/c/mruby_class_handler.rb)4
-rw-r--r--lib/yard/mruby/handlers/c/method_handler.rb (renamed from lib/yard/handlers/c/mruby_method_handler.rb)4
-rw-r--r--lib/yard/mruby/handlers/c/module_handler.rb (renamed from lib/yard/handlers/c/mruby_module_handler.rb)4
-rw-r--r--lib/yard/mruby/handlers/c/symbol_handler.rb (renamed from lib/yard/handlers/c/mruby_symbol_handler.rb)5
11 files changed, 67 insertions, 64 deletions
diff --git a/lib/yard/handlers.rb b/lib/yard/handlers.rb
deleted file mode 100644
index 41a1f73..0000000
--- a/lib/yard/handlers.rb
+++ /dev/null
@@ -1,2 +0,0 @@
-require_relative 'handlers/c'
-#require_relative 'handlers/header'
diff --git a/lib/yard/handlers/c.rb b/lib/yard/handlers/c.rb
deleted file mode 100644
index 8666b51..0000000
--- a/lib/yard/handlers/c.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-require_relative 'c/mruby_base'
-require_relative 'c/mruby_symbol_handler'
-require_relative 'c/mruby_class_handler'
-require_relative 'c/mruby_module_handler'
-require_relative 'c/mruby_method_handler'
-
diff --git a/lib/yard/handlers/c/mruby_base.rb b/lib/yard/handlers/c/mruby_base.rb
deleted file mode 100644
index 3b45f9a..0000000
--- a/lib/yard/handlers/c/mruby_base.rb
+++ /dev/null
@@ -1,47 +0,0 @@
-module YARD::Handlers::C
- class MRubyBase < Base
-
- DEFAULT_NAMESPACES = {
- # 'mrb->top_self' => '',
- 'object_class' => 'Object',
- 'class_class' => 'Class',
- 'module_class' => 'Module',
- 'proc_class' => 'Proc',
- 'string_class' => 'String',
- 'array_class' => 'Array',
- 'hash_class' => 'Hash',
- 'float_class' => 'Float',
- 'fixnum_class' => 'Fixnum',
- 'true_class' => 'TrueClass',
- 'false_class' => 'FalseClass',
- 'nil_class' => 'NilClass',
- 'symbol_class' => 'Symbol',
- 'kernel_module' => 'Kernel'
- }
-
- def namespace_for_variable(var)
- DEFAULT_NAMESPACES[ var[/^\w+->(\w+)$/, 1] ] || super
- end
-
- def handle_class(var_name, class_name, parent, stmt, in_module = nil)
- object = super(var_name, class_name, parent, in_module)
-
- if stmt.comments
- register_docstring(object, stmt.comments.source, stmt)
- end
-
- object
- end
-
- def handle_module(var_name, module_name, stmt, in_module = nil)
- object = super(var_name, module_name, in_module)
-
- if stmt.comments
- register_docstring(object, stmt.comments.source, stmt)
- end
-
- object
- end
-
- end
-end
diff --git a/lib/yard/mruby.rb b/lib/yard/mruby.rb
index cc73bcb..2ccd6e8 100644
--- a/lib/yard/mruby.rb
+++ b/lib/yard/mruby.rb
@@ -2,4 +2,3 @@ require_relative "mruby/version"
require_relative "mruby/code_objects"
require_relative "mruby/parser"
require_relative "mruby/handlers"
-require_relative "handlers"
diff --git a/lib/yard/mruby/handlers.rb b/lib/yard/mruby/handlers.rb
index 848d25e..bcd1a5d 100644
--- a/lib/yard/mruby/handlers.rb
+++ b/lib/yard/mruby/handlers.rb
@@ -1 +1,2 @@
+require_relative 'handlers/c'
require_relative 'handlers/header'
diff --git a/lib/yard/mruby/handlers/c.rb b/lib/yard/mruby/handlers/c.rb
new file mode 100644
index 0000000..2f25788
--- /dev/null
+++ b/lib/yard/mruby/handlers/c.rb
@@ -0,0 +1,6 @@
+require_relative 'c/base'
+require_relative 'c/symbol_handler'
+require_relative 'c/class_handler'
+require_relative 'c/module_handler'
+require_relative 'c/method_handler'
+
diff --git a/lib/yard/mruby/handlers/c/base.rb b/lib/yard/mruby/handlers/c/base.rb
new file mode 100644
index 0000000..6f17c37
--- /dev/null
+++ b/lib/yard/mruby/handlers/c/base.rb
@@ -0,0 +1,51 @@
+module YARD::MRuby::Handlers
+ module C
+ class Base < YARD::Handlers::C::Base
+
+ DEFAULT_NAMESPACES = {
+ # 'mrb->top_self' => '',
+ 'object_class' => 'Object',
+ 'class_class' => 'Class',
+ 'module_class' => 'Module',
+ 'proc_class' => 'Proc',
+ 'string_class' => 'String',
+ 'array_class' => 'Array',
+ 'hash_class' => 'Hash',
+ 'float_class' => 'Float',
+ 'fixnum_class' => 'Fixnum',
+ 'true_class' => 'TrueClass',
+ 'false_class' => 'FalseClass',
+ 'nil_class' => 'NilClass',
+ 'symbol_class' => 'Symbol',
+ 'kernel_module' => 'Kernel'
+ }
+
+ def namespace_for_variable(var)
+ DEFAULT_NAMESPACES[ var[/^\w+->(\w+)$/, 1] ] || super
+ end
+
+ def handle_class(var_name, class_name, parent, stmt, in_module = nil)
+ object = super(var_name, class_name, parent, in_module)
+
+ if stmt.comments
+ register_docstring(object, stmt.comments.source, stmt)
+ end
+
+ object
+ end
+
+ def handle_module(var_name, module_name, stmt, in_module = nil)
+ object = super(var_name, module_name, in_module)
+
+ if stmt.comments
+ register_docstring(object, stmt.comments.source, stmt)
+ end
+
+ object
+ end
+
+ end
+ end
+
+ YARD::Handlers::Processor.register_handler_namespace :C, C
+end
diff --git a/lib/yard/handlers/c/mruby_class_handler.rb b/lib/yard/mruby/handlers/c/class_handler.rb
index 72d516c..f0223f0 100644
--- a/lib/yard/handlers/c/mruby_class_handler.rb
+++ b/lib/yard/mruby/handlers/c/class_handler.rb
@@ -1,5 +1,5 @@
-module YARD::Handlers::C
- class MRubyClassHandler < MRubyBase
+module YARD::MRuby::Handlers::C
+ class ClassHandler < Base
TOP_LEVEL_CLASS = /([\w]+)\s*=\s*mrb_define_class\s*
\(
diff --git a/lib/yard/handlers/c/mruby_method_handler.rb b/lib/yard/mruby/handlers/c/method_handler.rb
index a8812ae..d60b568 100644
--- a/lib/yard/handlers/c/mruby_method_handler.rb
+++ b/lib/yard/mruby/handlers/c/method_handler.rb
@@ -1,5 +1,5 @@
-module YARD::Handlers::C
- class MRubyMethodHandler < MRubyBase
+module YARD::MRuby::Handlers::C
+ class MethodHandler < Base
MATCH1 = /mrb_define_(
method |
singleton_method |
diff --git a/lib/yard/handlers/c/mruby_module_handler.rb b/lib/yard/mruby/handlers/c/module_handler.rb
index 3b86274..6b38be9 100644
--- a/lib/yard/handlers/c/mruby_module_handler.rb
+++ b/lib/yard/mruby/handlers/c/module_handler.rb
@@ -1,5 +1,5 @@
-module YARD::Handlers::C
- class MRubyModuleHandler < MRubyBase
+module YARD::MRuby::Handlers::C
+ class ModuleHandler < Base
TOP_LEVEL_MODULE = /([\w]+)\s*=\s*mrb_define_module\s*
\(
diff --git a/lib/yard/handlers/c/mruby_symbol_handler.rb b/lib/yard/mruby/handlers/c/symbol_handler.rb
index 8b256d2..8f24b93 100644
--- a/lib/yard/handlers/c/mruby_symbol_handler.rb
+++ b/lib/yard/mruby/handlers/c/symbol_handler.rb
@@ -1,6 +1,7 @@
-module YARD::Handlers::C
+module YARD::MRuby::Handlers::C
# Keeps track of function bodies for symbol lookup during MRuby method declarations
- class MRubySymbolHandler < MRubyBase
+ class SymbolHandler < Base
+
MATCH = /
mrb_value\s*(\w+)\s*\(\s*mrb_state\s*\*\s*\w+,\s*mrb_value\s*\w+\s*\)
/mx