在Go中轻松安全地从一种数据类型转换为另一种数据类型
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

64 lines
1.1 KiB

  1. // Copyright © 2014 Steve Francia <spf@spf13.com>.
  2. //
  3. // Use of this source code is governed by an MIT-style
  4. // license that can be found in the LICENSE file.
  5. package cast
  6. import "time"
  7. func ToBool(i interface{}) bool {
  8. v, _ := ToBoolE(i)
  9. return v
  10. }
  11. func ToTime(i interface{}) time.Time {
  12. v, _ := ToTimeE(i)
  13. return v
  14. }
  15. func ToDuration(i interface{}) time.Duration {
  16. v, _ := ToDurationE(i)
  17. return v
  18. }
  19. func ToFloat64(i interface{}) float64 {
  20. v, _ := ToFloat64E(i)
  21. return v
  22. }
  23. func ToInt(i interface{}) int {
  24. v, _ := ToIntE(i)
  25. return v
  26. }
  27. func ToString(i interface{}) string {
  28. v, _ := ToStringE(i)
  29. return v
  30. }
  31. func ToStringMapString(i interface{}) map[string]string {
  32. v, _ := ToStringMapStringE(i)
  33. return v
  34. }
  35. func ToStringMapBool(i interface{}) map[string]bool {
  36. v, _ := ToStringMapBoolE(i)
  37. return v
  38. }
  39. func ToStringMap(i interface{}) map[string]interface{} {
  40. v, _ := ToStringMapE(i)
  41. return v
  42. }
  43. func ToSlice(i interface{}) []interface{} {
  44. v, _ := ToSliceE(i)
  45. return v
  46. }
  47. func ToStringSlice(i interface{}) []string {
  48. v, _ := ToStringSliceE(i)
  49. return v
  50. }