Class: Fields::ContainerField

Inherits:
Field
  • Object
show all
Defined in:
lib/hammer_cli/output/fields.rb

Direct Known Subclasses

Collection, Label

Instance Attribute Summary

Attributes inherited from Field

#label, #path

Instance Method Summary collapse

Methods inherited from Field

#hide_blank?, #parameters

Constructor Details

#initialize(options = {}, &block) ⇒ ContainerField

Returns a new instance of ContainerField.



40
41
42
43
44
45
46
# File 'lib/hammer_cli/output/fields.rb', line 40

def initialize(options={}, &block)
  super(options)
  dsl = HammerCLI::Output::Dsl.new
  dsl.build &block if block_given?

  self.output_definition.append dsl.fields
end

Instance Method Details

#display?(value) ⇒ Boolean

Returns:



57
58
59
60
61
62
63
64
65
# File 'lib/hammer_cli/output/fields.rb', line 57

def display?(value)
  if not hide_blank?
    true
  elsif value.nil? || value.empty?
    false
  else
    true
  end
end

#fieldsObject



53
54
55
# File 'lib/hammer_cli/output/fields.rb', line 53

def fields
  @output_definition.fields
end

#output_definitionObject



48
49
50
51
# File 'lib/hammer_cli/output/fields.rb', line 48

def output_definition
  @output_definition ||= HammerCLI::Output::Definition.new
  @output_definition
end