Class: Types::Timestamp
- Inherits:
-
TypedValue
- Object
- Typed
- TypedValue
- Types::Timestamp
- Defined in:
- lib/solidity/typed/numbers.rb
Constant Summary
Constants inherited from Typed
Types::Typed::ADDRESS_ZERO, Types::Typed::BYTES20_ZERO, Types::Typed::BYTES32_ZERO, Types::Typed::BYTES_ZERO, Types::Typed::INSCRIPTION_ID_ZERO, Types::Typed::STRING_ZERO
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(initial_value = 0) ⇒ Timestamp
constructor
A new instance of Timestamp.
- #zero? ⇒ Boolean
Methods inherited from TypedValue
#==, #as_data, #eql?, #hash, #pretty_print, #to_s
Methods inherited from Typed
#as_data, #as_json, dump, serialize, #serialize, #type
Constructor Details
#initialize(initial_value = 0) ⇒ Timestamp
Returns a new instance of Timestamp.
76 77 78 79 80 81 82 83 84 85 |
# File 'lib/solidity/typed/numbers.rb', line 76 def initialize( initial_value = 0 ) ## was: initial_value ||= type.zero ## check if nil gets passed in - default not used? raise ArgumentError, "expected literal of type #{type}; got typed #{initial_value.pretty_print_inspect}" if initial_value.is_a?( Typed ) @value = type.check_and_normalize_literal( initial_value ) @value.freeze ## freeze here (and freeze self!) - why? why not? @value end |
Class Method Details
.type ⇒ Object
72 |
# File 'lib/solidity/typed/numbers.rb', line 72 def self.type() TimestampType.instance; end |
.zero ⇒ Object
73 |
# File 'lib/solidity/typed/numbers.rb', line 73 def self.zero() @zero ||= new; end |
Instance Method Details
#zero? ⇒ Boolean
74 |
# File 'lib/solidity/typed/numbers.rb', line 74 def zero?() @value == 0; end |