1. 08 Jan, 2019 1 commit
  2. 08 Dec, 2018 1 commit
    • Eric Myhre's avatar
      Begin schema validation method. · b66f9261
      Eric Myhre authored
      This will be for the active path -- if we also follow through on the
      idea of having a just-in-time checked Node wrapper, a lot of these
      checks might end up duplicated.  We'll DRY that up when we get there.
      
      Doing accumulation of errors.  Might get loud.  We can come back and
      and early-halt parameters or other accumulation strategies later.
      
      Added IsNull predicate to core Node interface.
      
      Going to want enumerated error categories here for sure, but punting
      on that until we get more examples of what all the errors *are*; then
      I'll come back and tear all this 'fmt.Errorf' nonsense back out.
      Signed-off-by: default avatarEric Myhre <hash@exultant.us>
      b66f9261
  3. 06 Dec, 2018 1 commit
    • Eric Myhre's avatar
      Add Kind and Keys methods to Node. · 5c32434e
      Eric Myhre authored
      And ReprKind moves from the typed package to the ipld main package.
      It's hard to get too much done without the standardization of ReprKind.
      
      Between the Kind() and Keys() methods, it should now be possible to
      perform traversals of unknown nodes.
      
      This diff just worries about implementing all the Kind() methods.
      Keys() has some additional questions to handle (namely, map ordering?).
      Signed-off-by: default avatarEric Myhre <hash@exultant.us>
      5c32434e
  4. 26 Nov, 2018 1 commit
  5. 10 Nov, 2018 2 commits
    • Eric Myhre's avatar
      Add missing link fields to ipldfree.Node. · 6e449c0a
      Eric Myhre authored
      Not sure why these weren't there already.
      
      (Probably because of the ongoing discussion about "is link a kind at
      the data model level?" -- to which I still opine "ideally, no".  But
      that's something we're probably going to concede "yes" on *for now*,
      and try to straighten out later once we get something ready for the
      higher level type systems.)
      Signed-off-by: default avatarEric Myhre <hash@exultant.us>
      6e449c0a
    • Eric Myhre's avatar
      Drag a few things towards consistent order. · 1ac85e2d
      Eric Myhre authored
      Sort float and bytes (less ubiquitous things) to the bottom.
      
      Drop mention of uint from the ipldfree implementation.  So far all spec
      discussions have tended towards mentioning "integers" as a type, and
      definitely not "unsigned integers" or "positive-only integers" as a
      distinct kind in the core Data Model.
      Signed-off-by: default avatarEric Myhre <hash@exultant.us>
      1ac85e2d
  6. 21 Oct, 2018 1 commit
    • Eric Myhre's avatar
      Node for all. Last phase deref. · 34a8b3c7
      Eric Myhre authored
      Finally got the bind and free impls on the same page.
      
      Surprisingly, the bind node can work without being a ptr itself.
      I'm not sure if that'll last, but let's try to roll with it.
      If we *can* keep that property, it might reduce GC impact in a pretty
      significant way.
      
      Added a 'fluent' package.  It's just a twinkle in my eye so far, but it
      might represent the nicest way through all the discussed issues.
      Nodes shouldn't have to be panicful; and users shouldn't have to do all
      error handling manually either.  A package full of fluent interfaces
      that know what's going on seems to be the only way to get both.
      But we'll see how this shakes out.  Maybe typeful traversers will
      make the whole thing end up more coreward than being relegated to a
      helper package.  I have no idea.
      Signed-off-by: default avatarEric Myhre <hash@exultant.us>
      34a8b3c7
  7. 19 Oct, 2018 1 commit