Sha256: 0892a8b619e2a09efe105f2f78153e2d842e8eacf687b0c1d8d2a9031f0eec81

Contents?: true

Size: 647 Bytes

Versions: 2

Compression:

Stored size: 647 Bytes

Contents

class StepTransformHandler < YARD::Handlers::Ruby::Legacy::Base
  MATCH = /^Transform\s*(\/[^\/]+\/).+$/
  handles MATCH

  @@unique_name = 0
  
  def process
    transform = statement.tokens.to_s[MATCH,1]
    
    @@unique_name = @@unique_name + 1
    
    obj = register StepTransformObject.new(YARD::CodeObjects::Cucumber::CUCUMBER_STEPTRANSFORM_NAMESPACE, "transform_#{@@unique_name}") do |o| 
      o.source = "Transform #{transform} do #{statement.block.to_s}\nend"
      o.value = transform
      o.keyword = "Transform"
    end

    parse_block :owner => obj

  rescue YARD::Handlers::NamespaceMissingError
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
cucumber-in-the-yard-1.5.1 lib/yard/handlers/step_transform_handler.rb
cucumber-in-the-yard-1.5 lib/yard/handlers/step_transform_handler.rb