Class: YARD::Virtus::Declarations::Options

Inherits:
Object
  • Object
show all
Defined in:
lib/yard/virtus/declarations/options.rb

Overview

VirtusModel declaration wraps AST which represents options hash.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(ast) ⇒ Options

Returns a new instance of Options.



10
11
12
13
14
15
16
17
# File 'lib/yard/virtus/declarations/options.rb', line 10

def initialize(ast)
  @ast = ast
  @data = if ast.kind_of?(YARD::Parser::Ruby::AstNode)
            safe_eval("{#{ast.source}}")
          else
            {}
          end
end

Instance Attribute Details

#astObject (readonly)

Returns the value of attribute ast.



7
8
9
# File 'lib/yard/virtus/declarations/options.rb', line 7

def ast
  @ast
end

Instance Method Details

#[](key) ⇒ Object



19
20
21
# File 'lib/yard/virtus/declarations/options.rb', line 19

def [](key)
  data[key]
end

#empty?Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/yard/virtus/declarations/options.rb', line 23

def empty?
  data.empty?
end