Sha256: 5d75b467f9aa836c4c399ad80420bb921a61157abfe770a0edefbd1df15df99b

Contents?: true

Size: 771 Bytes

Versions: 5

Compression:

Stored size: 771 Bytes

Contents

class YARD::Handlers::Ruby::Legacy::StepTransformHandler < YARD::Handlers::Ruby::Legacy::Base
  STEP_TRANSFORM_MATCH = /^(Transform\s*(\/.+\/)\s+do(?:\s*\|.+\|)?\s*)$/
  handles STEP_TRANSFORM_MATCH

  @@unique_name = 0
  
  def process
    transform = statement.tokens.to_s[STEP_TRANSFORM_MATCH,2]
    @@unique_name = @@unique_name + 1
    
    instance = 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
  
    obj = register instance
    parse_block :owner => obj
    
  rescue YARD::Handlers::NamespaceMissingError
  end
  
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
cucumber-in-the-yard-1.7.8 lib/yard/handlers/legacy/step_transform_handler.rb
cucumber-in-the-yard-1.7.7 lib/yard/handlers/legacy/step_transform_handler.rb
cucumber-in-the-yard-1.7.6 lib/yard/handlers/legacy/step_transform_handler.rb
cucumber-in-the-yard-1.7.5 lib/yard/handlers/legacy/step_transform_handler.rb
cucumber-in-the-yard-1.7.4 lib/yard/handlers/legacy/step_transform_handler.rb