Also removed the 'old' pub code.
Moved the old tests back into the new pub, which means no tests pass
because the test build fails. So test porting needs to happen.
Still a lot to do:
- Delete old deliverer folder
- Revisit handler funcs
- Constructors
- Side effects for the wrapped callback functions
- Any other TODOs
- Deserialization now happens correctly into the rdf:langString
property.
- Kluges to make sure the member is being set and referred to in the
generation code.
- No longer generate special member for natural language map nor a
special Is method. Use the rdf:langString generated proeprties.
- Keep the Set/Get special language members for handling individual
languages.
- Fix bug where non-inherited properties didn't apply to a type, only
the type's children.
- Added orderedItems.
- Excluded items property from OrderedCollectionPage.
- Fixed OrderedCollectionPage extending from two types.
See previous commit message about improvements needed to reduce the
linking hell that is introduced in this code generation. Everything is
now linking against the 'type' property's concrete constructor.
All tests pass. However:
- Need to inject the type property constructor at init time, much like
the manager. Statically linking sucks and really slowed it down with
the direct linking method currently being used. I suspect this makes
it no longer compile on a Raspberry Pi 3, so even more of a reason to
do it at init time.
- Having the type property automatically set at construction time is an
extremely nice feature lacking in v0.
- Unfortunately, right now this introduces a hack in the convert
package.
- Modified the 'type' property definition to also be a string for major
convenience; it has no semantic significance as xsd:string.
- Add missing ActivityPub actor and object properties
- Introspect type when deserializing
- Unknown on properties is now an interface
- Can now generate code when an extends hierarchy is specified multiple
times as a range.
This is because Go's JSON package usees float64 under the hood, even
though xsd:float specifically specifies float32, I don't feel it is
worth getting that level of compatibility down, we will just be extra
precise.
- Sorting serialization and deserialization functions to reduce random
noise when regenerating code.
- IRI methods can now short-cut to a URI equivalent value.
- Kind constructors.
- Extended types now can also be attached to properties (bleh). Blows up
the API size, really quickly.
- Minor bugfixes.