Class: Construqt::Flavour::Ciscian::RangeVerb

Inherits:
Object
  • Object
show all
Defined in:
lib/construqt/flavour/ciscian/ciscian.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(section) ⇒ RangeVerb

Returns a new instance of RangeVerb.



301
302
303
304
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 301

def initialize(section)
  self.section=section
  self.values = []
end

Instance Attribute Details

#sectionObject

Returns the value of attribute section.



300
301
302
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 300

def section
  @section
end

#valuesObject

Returns the value of attribute values.



300
301
302
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 300

def values
  @values
end

Class Method Details

.compare(nu, old) ⇒ Object



322
323
324
325
326
327
328
329
330
331
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 322

def self.compare(nu, old)
  return [nu] unless old
  return [old.no] unless nu
  throw "classes must match #{nu.class.name} != #{old.class.name}" unless nu.class == old.class
  if (nu.serialize==old.serialize)
    [nil]
  else
    [nu]
  end
end

Instance Method Details

#add(value) ⇒ Object



306
307
308
309
310
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 306

def add(value)
  #throw "must be a number \'#{value}\'" unless /^\d+$/.match(value.to_s)
  self.values << value #.to_i
  self
end

#noObject



312
313
314
315
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 312

def no
  @no="no "
  self
end

#serializeObject



333
334
335
336
337
338
339
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 333

def serialize
  if @no
    ["#{@no}#{section} #{Construqt::Util.createRangeDefinition(values)}"]
  else
    ["#{section} #{Construqt::Util.createRangeDefinition(values)}"]
  end
end

#yesObject



317
318
319
320
# File 'lib/construqt/flavour/ciscian/ciscian.rb', line 317

def yes
  @no=nil
  self
end