コミットグラフ

23 コミット

作成者 SHA1 メッセージ 日付
Cory Slep 9c2c99588f Switch from cjslep fork to go-fed in exp tool 2019-01-26 21:36:04 +01:00
Cory Slep ceb542ffd3 Multiple specs now generates, but generated code is borked.
The interfaces need to all be generated together, or else vocabularies
could have cyclic dependencies.

Package documentation will need to reflect each of the vocabularies'
documentation.

References' types and properties need to be generated.
2019-01-17 22:40:52 +01:00
Cory Slep 920144aba6 Multiple specs supported by RDF parser.
However, the converter still cannot handle converting it to generators
and then files.
2019-01-16 21:43:36 +01:00
Cory Slep 4582f88848 Add custom_spec.json. Populate Vocab name from spec document. 2019-01-14 22:06:03 +01:00
Cory Slep d3a4507a2a Newline after main program says done. 2019-01-13 22:34:29 +01:00
Cory Slep e6160858f0 Remove ValueRoot and comment all direct code.
Still need to review the comments on all code-generated code.
2019-01-12 20:53:00 +01:00
Cory Slep 1f12842eeb Rename 'props' package to 'gen'. 2019-01-12 15:28:21 +01:00
Cory Slep 3dbad22900 Add flag for generating with individual package policy. 2019-01-12 14:37:37 +01:00
Cory Slep ea8af5c968 Prep for IRIs, no more circular deps, added getters/setters.
A lot of stuff just happened for the better.
2019-01-06 19:44:24 +01:00
Cory Slep 26988b6cd2 Add BCP47 to known values 2019-01-06 12:27:18 +01:00
Cory Slep 4f47e7fdfa Clean up Manager generation.
- Organize manager function generation into one helper method
- Vocabulary name is passed into the type & property generators
- Use interface only in the manager
- Remove unused flags in the main program
2019-01-05 16:22:37 +01:00
Cory Slep 54f8549b10 Add generation of referenced values.
Fix the package qualified naming for value types and also correctly
reference the net/url package in the owl ontology.
2019-01-05 00:00:51 +01:00
Cory Slep ee9aade57f Add support for prefixing generated code paths. 2019-01-03 00:29:24 +01:00
Cory Slep 3da311641b Fix file writing locations.
Also write interfaces into public sections.

Lots of TODOs and more work to add.

Will need to look into how to simplify this logic -- there is a lot of
redundancy and kludgy-feeling things. Will definitely need to address
the converter part as it is very redundant.
2018-12-30 16:54:16 +01:00
Cory Slep ce699464bf Overhaul package management, add manager.
The manager class will be responsible for allowing the generated code to
be compilable while also permitting types and properties to be isolated,
such that binaries can be pruned to smaller sizes and not require the
entire gambit be built into the resulting executable.

This state will successfully generate code, but the generated code is
completely uncompilable. It will also trash the props/ directory.
2018-12-30 16:09:14 +01:00
Cory Slep 73f7e3cf36 Experimental codegen works end to end.
Still plenty of missing features, and missing implementations in the
generated code. Also missing some functionality and flags for generating
references and/or well-known references (ex: XML, RDF values).
2018-12-09 21:23:32 +01:00
Cory Slep d2182dc3b9 Tool can now print its intermediate state 2018-12-05 23:50:20 +01:00
Cory Slep 864616542c Prepare for @type to contextually resolve.
- Remove unused 'as' ontology
- Outline new GetByName for ontologies
- Fix bugs
- Prepare the type to use the RDFRegistry
2018-12-02 23:48:54 +01:00
Cory Slep 68f6602ebb Fix fork imports and rearrange parsing functions 2018-11-29 01:22:56 +01:00
Cory Slep 8b4f9fc81c Prepare tool for ingesting JSON LD context defs. 2018-11-28 21:40:11 +01:00
Cory Slep 2ebd905f76 experimental: More type improvements.
- Fixed extendedBy generated method behaving like extends
- Add the extends generated method
- Extends / extendedBy examine the parent / children as well
- Properties and types cache their generated structs, only creating the
  codegen types once
- Create convenience constructor methods
2018-11-04 19:05:56 +01:00
Cory Slep d08cc46275 experimental: Add ActivityPub types.
This begins adding types as standalone compositions of properties, along
with helper functions to manage the hierarchy better than the current v0
implementation.

I think it will still need to be focused on flexibility at compile time
over runtime; but this will still allow extensions to be generated
easily from existing code.

This is a natural extension of the v0 philosophy: many folks still
cannot understand the similarity that to deploy new meaningful behaviors
with interpreted javascript/python/etc then code still needs to be
written and deployed, just as this go code will need to be regenerated,
written against, and deployed.

Code generation plus type system means a lot of the heavy lifting and
potential errors are already thought through for an ActivityPub
developer.
2018-11-03 16:56:09 +01:00
Cory Slep e834879207 Experimental: restructure directories 2018-10-19 22:44:13 +02:00