Nav apraksta

atomic.go 676B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package example
  2. // OMIT
  3. func AddInt32(addr *int32, delta int32) int32 {
  4. // some codes ...
  5. return 0
  6. }
  7. func AddInt64(addr *int64, delta int64) int64 {
  8. // some codes ...
  9. return 0
  10. }
  11. func AddUint32(addr *uint32, delta uint32) uint32 {
  12. // some codes ...
  13. return 0
  14. }
  15. func AddUint64(addr *uint64, delta uint64) uint64 {
  16. // some codes ...
  17. return 0
  18. }
  19. // OMIT
  20. // INTR OMIT
  21. func Add(addr interface{}, delta interface{}) interface{} {
  22. switch addr.(type) {
  23. case nil:
  24. // some codes
  25. case *int32:
  26. // some codes
  27. case *int64:
  28. // some codes
  29. case *uint32:
  30. // some codes
  31. case *uint64:
  32. // some codes
  33. }
  34. return nil
  35. }
  36. // INTR OMIT