class Protobuf::Field::BoolField

Constants

ACCEPTABLES
FALSE_ENCODE
FALSE_STRING
FALSE_VALUES
ONE
TRUE_ENCODE
TRUE_STRING
TRUE_VALUES

Public Class Methods

default() click to toggle source

Class Methods

# File lib/protobuf/field/bool_field.rb, line 19
def self.default
  false
end

Public Instance Methods

acceptable?(val) click to toggle source

Public Instance Methods #

# File lib/protobuf/field/bool_field.rb, line 27
def acceptable?(val)
  ACCEPTABLES.include?(val)
end
coerce!(val) click to toggle source
# File lib/protobuf/field/bool_field.rb, line 31
def coerce!(val)
  if TRUE_VALUES.include?(val)
    true
  elsif FALSE_VALUES.include?(val)
    false
  else
    fail TypeError, "Expected value of type '#{type_class}' for field #{name}, but got '#{val.class}'"
  end
end
decode(value) click to toggle source
# File lib/protobuf/field/bool_field.rb, line 41
def decode(value)
  value == ONE
end
encode(value) click to toggle source
# File lib/protobuf/field/bool_field.rb, line 45
def encode(value)
  value ? TRUE_ENCODE : FALSE_ENCODE
end

Private Instance Methods

define_accessor(simple_field_name, _fully_qualified_field_name) click to toggle source

Private Instance Methods

Calls superclass method
# File lib/protobuf/field/bool_field.rb, line 55
def define_accessor(simple_field_name, _fully_qualified_field_name)
  super
  message_class.class_eval do
    alias_method "#{simple_field_name}?", simple_field_name
  end
end