class BqGuess::Fields::Base
Attributes
mode[R]
name[R]
type[R]
Public Class Methods
new(name)
click to toggle source
# File lib/bq_guess/fields/base.rb, line 8 def initialize(name) @name = name @type = self.class.to_s.split("::").last.downcase.to_sym required! end
Public Instance Methods
as_schema()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 14 def as_schema { name: name, type: type.to_s.upcase, mode: mode.to_s.upcase } end
nullable!()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 22 def nullable! @mode = :nullable end
nullable?()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 26 def nullable? mode == :nullable end
repeated!()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 30 def repeated! @mode = :repeated end
repeated?()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 34 def repeated? mode == :repeated end
required!()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 38 def required! @mode = :required end
required?()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 42 def required? mode == :required end
to_hash()
click to toggle source
# File lib/bq_guess/fields/base.rb, line 46 def to_hash { name: name, type: type, mode: mode } end