# File lib/tree.rb, line 320 def fill_in!(cidr) filled = false # validate object if ( !cidr.kind_of?(NetAddr::CIDR) ) begin cidr = NetAddr::CIDR.create(cidr) rescue Exception => error raise ArgumentError, "Provided argument raised the following " + "errors: #{error}" end end me = find_me(cidr) if (me && me.tag[:Subnets].length != 0) me.tag[:Subnets] = NetAddr.cidr_fill_in(me, me.tag[:Subnets]) me.tag[:Subnets].each do |subnet| subnet.tag[:Subnets] = [] if (!subnet.tag.has_key?(:Subnets)) end filled = true end return(filled) end