Method: Sfn::Lint::Definition#initialize

Defined in:
lib/sfn/lint/definition.rb

#initialize(expr, provider = :aws, evaluator = nil, &block) ⇒ self

Create a new definition

Parameters:

  • expr (String)

    search expression used for matching

  • provider (String, Symbol) (defaults to: :aws)

    target provider

  • evaluator (Proc) (defaults to: nil)

    logic used to handle match



21
22
23
24
25
26
27
28
# File 'lib/sfn/lint/definition.rb', line 21

def initialize(expr, provider=:aws, evaluator=nil, &block)
  if(evaluator && block)
    raise ArgumentError.new 'Only evaluator or block can be provided, not both.'
  end
  @provider = Bogo::Utility.snake(provider).to_sym
  @search_expression = expr
  @evaluator = evaluator || block
end