github.com/antihax/goesi@v0.0.0-20240126031043-6c54d0cb7f95/optional/int.go (about) 1 package optional 2 3 type Int struct { 4 isSet bool 5 value int 6 } 7 8 func NewInt(value int) Int { 9 return Int{ 10 true, 11 value, 12 } 13 } 14 15 // EmptyInt returns a new Int that does not have a value set. 16 func EmptyInt() Int { 17 return Int{ 18 false, 19 0, 20 } 21 } 22 23 func (i Int) IsSet() bool { 24 return i.isSet 25 } 26 27 func (i Int) Value() int { 28 return i.value 29 } 30 31 func (i Int) Default(defaultValue int) int { 32 if i.isSet { 33 return i.value 34 } 35 return defaultValue 36 }