types.go 1020 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package requests
  2. import "strconv"
  3. type Integer string
  4. func NewInteger(integer int) Integer {
  5. return Integer(strconv.Itoa(integer))
  6. }
  7. func (integer Integer) HasValue() bool {
  8. return integer != ""
  9. }
  10. func (integer Integer) GetValue() (int, error) {
  11. return strconv.Atoi(string(integer))
  12. }
  13. func NewInteger64(integer int64) Integer {
  14. return Integer(strconv.FormatInt(integer, 10))
  15. }
  16. func (integer Integer) GetValue64() (int64, error) {
  17. return strconv.ParseInt(string(integer), 10, 0)
  18. }
  19. type Boolean string
  20. func NewBoolean(bool bool) Boolean {
  21. return Boolean(strconv.FormatBool(bool))
  22. }
  23. func (boolean Boolean) HasValue() bool {
  24. return boolean != ""
  25. }
  26. func (boolean Boolean) GetValue() (bool, error) {
  27. return strconv.ParseBool(string(boolean))
  28. }
  29. type Float string
  30. func NewFloat(f float64) Float {
  31. return Float(strconv.FormatFloat(f, 'f', 6, 64))
  32. }
  33. func (float Float) HasValue() bool {
  34. return float != ""
  35. }
  36. func (float Float) GetValue() (float64, error) {
  37. return strconv.ParseFloat(string(float), 64)
  38. }