Class: AccessSchema::Assert

Inherits:
Object
  • Object
show all
Defined in:
lib/access_schema/assert.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, vars = [], &block) ⇒ Assert

Returns a new instance of Assert.



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/access_schema/assert.rb', line 5

def initialize(name, vars = [], &block)
  @name = name
  @block = block
  vars << :subject unless vars.include?(:subject)
  (class << self; self; end).class_eval do
    vars.each do |name|
      define_method name do
        @options[name]
      end
    end
  end
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



3
4
5
# File 'lib/access_schema/assert.rb', line 3

def name
  @name
end

Instance Method Details

#check?(options) ⇒ Boolean

Returns:

  • (Boolean)


18
19
20
21
# File 'lib/access_schema/assert.rb', line 18

def check?(options)
  @options = options
  self.instance_eval(&@block)
end