1. 01 Oct, 2018 1 commit
    • Steven Allen's avatar
      stop copying when calling `Bytes` · 61e31ed4
      Steven Allen authored
      This is a huge performance hit. Really, we just need to tell users not to modify
      the result.
      
      Also, get rid of an unnecessary pointer indirection (no api change).
      61e31ed4
  2. 30 Sep, 2018 1 commit
  3. 15 Sep, 2018 1 commit
  4. 22 Jun, 2018 1 commit
  5. 19 Jun, 2018 3 commits
  6. 22 Oct, 2017 1 commit
  7. 31 Jul, 2017 1 commit
  8. 17 Mar, 2017 1 commit
  9. 19 Sep, 2016 1 commit
  10. 09 Aug, 2016 1 commit
  11. 04 May, 2016 2 commits
  12. 29 Apr, 2016 1 commit
  13. 18 Jan, 2016 1 commit
  14. 17 Jan, 2016 1 commit
  15. 25 Sep, 2015 1 commit
  16. 31 Aug, 2015 1 commit
  17. 29 Aug, 2015 2 commits
  18. 18 Jan, 2015 1 commit
  19. 09 Jan, 2015 3 commits
  20. 19 Nov, 2014 1 commit
  21. 05 Nov, 2014 2 commits
  22. 11 Oct, 2014 1 commit
  23. 06 Oct, 2014 2 commits
    • Juan Batiz-Benet's avatar
      New Multiaddr interface · c90ef447
      Juan Batiz-Benet authored
      This commit changes the struct to a new Multiaddr interface:
      
      ```Go
      type Multiaddr interface {
        Equal(Multiaddr) bool
        Bytes() []byte
        String() string
        Protocols() []*Protocol
        Encapsulate(Multiaddr) Multiaddr
        Decapsulate(Multiaddr) Multiaddr
      }
      ```
      
      This means a few things have changed:
      
      - use Multiaddr interface, struct not exported
      - Bytes returns a copy of the internal bytes
      - Some methods no longer return errors (catch errors in NewMultiaddr)
        - String (panics if malformed)
        - Protocols (panics if malformed)
        - Decapsulate (no-op if not prefix)
      - Moved net-specific functions to package
        - Multiaddr.DialArgs() -> DialArgs(Multiaddr)
        - Multiaddr.IsThinWaist() -> IsThinWaist(Multiaddr)
      
      cc @whyrusleeping @perfmode
      c90ef447
    • Juan Batiz-Benet's avatar
      Multiaddr.String no error · bd30912d
      Juan Batiz-Benet authored
      The error in String should not actually ocurr, as the multiaddr
      should have been valid to be constructed successfully, and thus
      should be encoded back to its string rep correctly.
      
      This will be bolstered by creating an interface (to prevent messing
      with the internal bytes)
      bd30912d
  24. 16 Sep, 2014 1 commit
  25. 11 Sep, 2014 1 commit
  26. 07 Jul, 2014 1 commit
  27. 04 Jul, 2014 4 commits