summaryrefslogtreecommitdiff
path: root/lc/Prelude.lc
diff options
context:
space:
mode:
authorPéter Diviánszky <divipp@gmail.com>2016-02-22 17:25:40 +0100
committerPéter Diviánszky <divipp@gmail.com>2016-02-22 17:25:40 +0100
commite55319991fd808f83dfa0011ff297cab4c8691f8 (patch)
tree8be68f322dd349fa5e24311ef8af1adc1b3c6e46 /lc/Prelude.lc
parente2a4faf60fb85fe559798a4ae97745eef7e5b4b1 (diff)
tweak name ticking
Diffstat (limited to 'lc/Prelude.lc')
-rw-r--r--lc/Prelude.lc2
1 files changed, 1 insertions, 1 deletions
diff --git a/lc/Prelude.lc b/lc/Prelude.lc
index ecb9852f..28c7fab8 100644
--- a/lc/Prelude.lc
+++ b/lc/Prelude.lc
@@ -133,7 +133,7 @@ fstTup (HCons a _) = a
133sndTup (HCons _ a) = a 133sndTup (HCons _ a) = a
134 134
135-- todo: don't use unsafeCoerce 135-- todo: don't use unsafeCoerce
136project :: forall a (xs :: [RecItem]) . forall (s :: String) -> 'isKeyC s a xs => RecordC xs -> a 136project :: forall a (xs :: [RecItem]) . forall (s :: String) -> isKeyC s a xs => RecordC xs -> a
137project @a @(RecItem s' a': xs) s @_ (RecordCons ts) | s == s' = fstTup (unsafeCoerce @_ @(HList '(a : map recItemType xs)) ts) 137project @a @(RecItem s' a': xs) s @_ (RecordCons ts) | s == s' = fstTup (unsafeCoerce @_ @(HList '(a : map recItemType xs)) ts)
138project @a @(RecItem s' a': xs) s @_ (RecordCons ts) = project @a @xs s @(undefined @(isKeyC s a xs)) (RecordCons (sndTup (unsafeCoerce @_ @(HList '(a : map recItemType xs)) ts))) 138project @a @(RecItem s' a': xs) s @_ (RecordCons ts) = project @a @xs s @(undefined @(isKeyC s a xs)) (RecordCons (sndTup (unsafeCoerce @_ @(HList '(a : map recItemType xs)) ts)))
139 139