nyan
nyan copied to clipboard
Typesafe hierarchical key-value database with inheritance and dynamic patching :smiley_cat:
nyan could provide a [lsp](https://github.com/Microsoft/language-server-protocol) server for completion and formatting in editors that support lsp.
`nyan` needs a Python API in order to be used from Python code, like the openage-converter. Best to use Cython. It can be done with the traditional Cython approach by...
Currently all sets can be initialized as empty which is not always desirable. It should be possible to require a minimum number of elements that have to be defined by...
Somehow, a `new_parents` vector is created in a `Transaction` even there are no new parents for an object. Find the bug and prevent that `new_parents` is added to the `changed`-map...
The value collections need a `items()` function which returns an iterator dynamically casts each element to `T`! The `operator *` of the iterator class must do the cast.
Performance optimization: Don't calculate the aggregated value every time, instead cache it. The complicated part is that a parent node, which influences the cached value, has to invalidate the cache....
Allow to use objects and namespaces only if they were imported properly. Currently all objects are available, because no check for imports is performed.
We need this to avoid applying the same patches in every view. This is currently cumbersome: * First, apply mods * Then, create teams (each needs a `View`) * Then...
We should allow the patch target to be defined for abstract patch members. Example syntax: ``` TransformTo(): enable_abilities : Patch ```
When member qualification is required, aliases could be specified to avoid writing the full origin object name. Parent name aliases are only valid locally (i.e. whenever accessing this object's scope)...