Class: Wukong::DocHelpers::DataflowHandler

Inherits:
YARD::Handlers::Ruby::ClassHandler
  • Object
show all
Defined in:
lib/wukong/doc_helpers/dataflow_handler.rb

Overview

Handles the Wukong.dataflow syntax.

Instance Method Summary collapse

Instance Method Details

#base_dataflow_classObject

:nodoc:



10
11
12
# File 'lib/wukong/doc_helpers/dataflow_handler.rb', line 10

def base_dataflow_class
  @base_dataflow_class ||= YARD::CodeObjects::ClassObject.new(namespace, "Wukong::Dataflow")
end

#processObject

:nodoc:



15
16
17
18
19
20
21
22
23
24
# File 'lib/wukong/doc_helpers/dataflow_handler.rb', line 15

def process
  dataflow_name  = statement.parameters.first.jump(:tstring_content, :ident).source
  class_name     = Gorillib::Inflector.camelize(dataflow_name)
  dataflow_class = create_class(class_name, base_dataflow_class)
  dataflow_body  = statement.last.last

  push_state(:owner => dataflow_class, :scope => :class, :namespace => dataflow_class) do
    parse_block(dataflow_body)
  end
end