class CrystalScad::BillOfMaterial::BillOfMaterial

Attributes

parts[RW]

Public Class Methods

new() click to toggle source
# File lib/crystalscad/BillOfMaterial.rb, line 20
def initialize
        @parts = {}
end

Public Instance Methods

add(part, quantity=1) click to toggle source
# File lib/crystalscad/BillOfMaterial.rb, line 24
def add(part, quantity=1)
        @parts[part] ||= 0
        @parts[part] += quantity
end
output() click to toggle source
# File lib/crystalscad/BillOfMaterial.rb, line 29
def output
        @parts.map{|key, qty| "#{qty} x #{key}"}.join("\n")
end
save(filename="bom.txt") click to toggle source
# File lib/crystalscad/BillOfMaterial.rb, line 33
          def save(filename="bom.txt")
            file = File.open(filename,"w")
file.puts output
file.close
          end