artinix/stdlib.nix

26 lines
772 B
Nix

{
lib,
}:
with lib;
mkModule (self: {
dtypes = mkModule (self': {
blob = mkRepoType {};
json = mkRepoType {
schema = {
int = { type = "int"; };
str = { type = "str"; };
listOf = ety: { type = "list"; inherit ety; };
dictOf = kty: vty: { type = "dict"; inherit kty vty; };
};
};
filesystem = mkRepoType {};
foreignKeyOf = foreignClass: mkRepoType { class = foreignClass; };
seqOf = ty: mkRepoType { inherit ty; };
tupleOf = children: mkRepoType { inherit children; };
});
repoAdapters = mkModule (self': {
seqToSpawn = mkAdapter { /* TODO */ };
tupleToRepos = mkAdapter { /* TODO */ };
});
})