class Snmp2mkr::ConfigTypes::Base

Attributes

binded_context[R]

Public Class Methods

new(obj, context: {}) click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 4
def initialize(obj, context: {})
  @original = obj
  setup obj
  self.binded_context = context
end

Public Instance Methods

bind_context(ctx) click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 29
def bind_context(ctx)
  self.class.new(@original, context: ctx)
end
children(type = nil) click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 18
def children(type = nil)
  @children ||= collect_children.flat_map { |ch| ch.kind_of?(Base) ? [ch, *ch.children] : [ch] }
  type ? @children.select { |_| type === _ } : @children
end
collect_children() click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 23
def collect_children
  []
end
evaluate(context: binded_context, previous: nil) click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 14
def evaluate(context: binded_context, previous: nil)
  value
end
inspect() click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 10
def inspect
  "#<#{self.class}: #{@original.inspect} (#{@binded_context.inspect})>"
end

Protected Instance Methods

binded_context=(o) click to toggle source
# File lib/snmp2mkr/config_types/base.rb, line 35
def binded_context=(o)
  @binded_context = o
  collect_children.each do |child|
    child.binded_context = o
  end
end