module GTFS::Model

Public Class Methods

included(base) click to toggle source
# File lib/gtfs/model.rb, line 5
def self.included(base)
  base.extend ClassMethods

  base.class_variable_set('@@prefix', '')
  base.class_variable_set('@@optional_attrs', [])
  base.class_variable_set('@@required_attrs', [])

  def valid?
    !self.class.required_attrs.any?{|f| self.send(f.to_sym).nil?}
  end

  def initialize(attrs)
    attrs.each do |key, val|
      instance_variable_set("@#{key}", val)
    end
  end
end
new(attrs) click to toggle source
# File lib/gtfs/model.rb, line 16
def initialize(attrs)
  attrs.each do |key, val|
    instance_variable_set("@#{key}", val)
  end
end

Public Instance Methods

valid?() click to toggle source
# File lib/gtfs/model.rb, line 12
def valid?
  !self.class.required_attrs.any?{|f| self.send(f.to_sym).nil?}
end