segregate types

This commit is contained in:
Emile Clark-Boman 2026-01-25 11:21:55 +10:00
parent 91de29889e
commit e3858bb932
5 changed files with 28 additions and 20 deletions

View file

@ -0,0 +1,8 @@
{mix, ...} @ inputs:
mix.newMixture inputs (mixture: {
includes.public = [
./maybe.nix
./null.nix
./wrap.nix
];
})

View file

@ -1,13 +1,13 @@
{this, ...}: let {this, ...}: let
inherit # inherit
(this) # (this)
enfImpls # enfImpls
mkTrapdoorFn # mkTrapdoorFn
mkTrapdoorSet # mkTrapdoorSet
ntTrapdoorKey # ntTrapdoorKey
ntDynamicTrapdoorKey # ntDynamicTrapdoorKey
openTrapdoor # openTrapdoor
; # ;
in { in {
# NOTE: Maybe is used to simplify parsing Type/Class declarations # NOTE: Maybe is used to simplify parsing Type/Class declarations
# NOTE: and therefore must be implemented manually # NOTE: and therefore must be implemented manually

View file

@ -1,10 +1,10 @@
# XXX: TODO: replace Null with the naive Maybe type # XXX: TODO: replace Null with the naive Maybe type
{this, ...}: let {this, ...}: let
inherit # inherit
(this) # (this)
ntTrapdoorKey # ntTrapdoorKey
mkTrapdoorSet # mkTrapdoorSet
; # ;
in { in {
# NOTE: This is not good for writing type safe code # NOTE: This is not good for writing type safe code
# NOTE: it is however efficient for bootstrapping the primitives # NOTE: it is however efficient for bootstrapping the primitives

View file

@ -1,10 +1,10 @@
{this, ...}: let {this, ...}: let
inherit # inherit
(this) # (this)
ntTrapdoorKey # ntTrapdoorKey
mkTrapdoorFn # mkTrapdoorFn
mkTrapdoorSet # mkTrapdoorSet
; # ;
in { in {
# NOTE: Wrap is used to simplify parsing Type/Class declarations # NOTE: Wrap is used to simplify parsing Type/Class declarations
# NOTE: and therefore must be implemented manually # NOTE: and therefore must be implemented manually