Cory Slep
c8cec42c57
Make property members private.
2019-01-08 20:47:55 +01:00
Cory Slep
a4f90ff8e0
Address two TODOs
2019-01-08 20:37:04 +01:00
Cory Slep
f2c70191ab
Fix bad formatting in comments.
2019-01-07 22:50:07 +01:00
Cory Slep
1a6a1213a5
Make comments look slick.
2019-01-07 22:39:30 +01:00
Cory Slep
9df52c8c45
Prepare comments to be auto-truncated at write time.
...
This changes comments to only be strings passed around between the
codegen package and its clients. This lets codegen in the future limit
how long a comment line is when generating the code.
2019-01-07 22:06:32 +01:00
Cory Slep
9369a8ad79
Ensure all interfaces have comments from the spec.
2019-01-07 21:31:36 +01:00
Cory Slep
b7ec140c66
Non-functional property interfaces now have breathing room.
2019-01-07 21:26:04 +01:00
Cory Slep
e8fb31437e
Print interface, struct, and typedef methods and functions in alphabetical order
2019-01-07 21:22:01 +01:00
Cory Slep
1b0ceb8344
Add IRI methods to properties.
2019-01-07 20:33:03 +01:00
Cory Slep
7ac133d101
Add IRI support and fix all build errors.
...
Generated code now will also compile, for the first time in forever!
2019-01-06 22:15:07 +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
7eb1755c96
Add support for link relation values.
2019-01-06 12:41:47 +01:00
Cory Slep
1bdb66aa98
Add support for MIME media type.
2019-01-06 12:36:11 +01:00
Cory Slep
26988b6cd2
Add BCP47 to known values
2019-01-06 12:27:18 +01:00
Cory Slep
4bc51a9f97
Fix deserialize signatures for types and values
2019-01-06 12:26:58 +01:00
Cory Slep
be110cf688
Add per-package files for property-based packages.
2019-01-06 00:13:24 +01:00
Cory Slep
7e96603df9
Use At method instead of indexing into other non-functional property
2019-01-05 23:54:17 +01:00
Cory Slep
2aefaeb873
Fix old "handled" deserialization and iterator interface qualifiers.
2019-01-05 23:49:18 +01:00
Cory Slep
73d677460b
Make manager interface for type packages have unique methods
2019-01-05 23:19:50 +01:00
Cory Slep
99343f540a
Stop method and member identifier name clash on types
2019-01-05 23:14:49 +01:00
Cory Slep
8b8cc2af27
Fix value qualified statements in interfaces.
...
Also fix the qualified interface name for non-functional properties in
the LessThan method.
2019-01-05 23:12:42 +01:00
Cory Slep
5c5fcd22e8
Fix functional property qualified interface bug.
2019-01-05 22:49:31 +01:00
Cory Slep
58e3d21e19
Add per-package files for type-based packages.
...
This takes care of abstracting away the manager for the generated types,
and also provides the hooks for the manager to inject itself at init
time.
2019-01-05 22:46:58 +01:00
Cory Slep
ec7091be51
Add serialization and comparison for rdf:langString
2019-01-05 21:54:00 +01:00
Cory Slep
6b3d676552
Add serialization and comparison for xsd:duration
2019-01-05 18:13:15 +01:00
Cory Slep
6ece169417
Add serialization and comparison for xsd:nonNegativeInteger
2019-01-05 17:17:12 +01:00
Cory Slep
7a99c1587e
Add serialization and comparison for xsd:boolean
2019-01-05 17:11:24 +01:00
Cory Slep
3a49fff6bb
Add serialization and comparison for xsd:string
2019-01-05 17:02:03 +01:00
Cory Slep
79e3cee633
Add serialization and comparison for xsd:float
2019-01-05 16:58:56 +01:00
Cory Slep
8b8232f1ed
Add serialization and comparison for xsd:anyURI
2019-01-05 16:52:47 +01:00
Cory Slep
338fe8d347
Add serialization and comparison for xsd:dateTime.
2019-01-05 16:43:49 +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
c36c529c5f
Add unknown property support
2019-01-05 13:05:11 +01:00
Cory Slep
87064de883
Simplify type getting parent types uniquely
2019-01-05 12:19:56 +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
df9ff825c2
Remove redundant interface code
2019-01-04 21:59:52 +01:00
Cory Slep
85ff299cf3
Cleanup kind's lessThan code generation
2019-01-04 21:56:29 +01:00
Cory Slep
d087200e02
Implement type's Serialize function
2019-01-03 22:56:19 +01:00
Cory Slep
2045f2602a
Fix name methods for non-functional properties
2019-01-03 22:35:24 +01:00
Cory Slep
48df99f07f
Fix double-calling value Kind functions
2019-01-03 22:27:14 +01:00
Cory Slep
0005e23011
Hook up LessThan for properties.
2019-01-03 21:36:10 +01:00
Cory Slep
24265690f8
Add LessThan implementation for types
2019-01-03 20:49:48 +01:00
Cory Slep
133c2fd477
Fix extendedBy and disjointWith methods/funcs
2019-01-03 20:24:37 +01:00
Cory Slep
ee9aade57f
Add support for prefixing generated code paths.
2019-01-03 00:29:24 +01:00
Cory Slep
625e93d412
Pass package manager to properties.
2019-01-03 00:16:54 +01:00
Cory Slep
aeda61d2f1
Clean up qualified names between implementations.
...
Implementations are relying more on each others' interfaces, which
allows for better code isolation and a better chance at pruning down
binaries when needed. Still plenty of TODO items left to tackle.
2018-12-31 18:42:39 +01:00
Cory Slep
5db3a68a8d
Fix concrete types to be interfaces in properties.
...
Fix bug in method calling code generation.
2018-12-31 16:49:25 +01:00
Cory Slep
b79b381a62
Only put exported methods in interfaces
2018-12-31 00:45:25 +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