aboutsummaryrefslogtreecommitdiff
path: root/src/checker_set.rs
diff options
context:
space:
mode:
authortslil <tslil@posteo.de>2026-05-01 12:36:24 +0100
committertslil <tslil@posteo.de>2026-05-01 15:06:31 +0100
commit0886a16d73145270e953b8c2e0a4452b518ea16e (patch)
tree71b36907a86ae7fe9a85da618e3df4b80b892935 /src/checker_set.rs
parent8b540449755ca8e73feb88e708f22fd292ace610 (diff)
working on fixing app, rework ast to have generics etc
Diffstat (limited to 'src/checker_set.rs')
-rw-r--r--src/checker_set.rs26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/checker_set.rs b/src/checker_set.rs
index 6ef8182..626f74d 100644
--- a/src/checker_set.rs
+++ b/src/checker_set.rs
@@ -13,12 +13,12 @@ impl CheckerState {
let mut ctx = self.clone();
let fields = fields
.into_iter()
- .map(|RecordField { name, set }| {
- let set = ctx.check_set(set)?;
+ .map(|Field { name, carries }| {
+ let set = ctx.check_set(carries)?;
ctx.add_element(name.clone(), ElementValue::Hypothetical, set.clone())?;
- Ok(RecordField {
+ Ok(Field {
name: name.clone(),
- set,
+ carries: set,
})
})
.collect::<Result<Vec<_>, _>>()?;
@@ -27,11 +27,11 @@ impl CheckerState {
Set::Variant(fields) => {
let fields = fields
.into_iter()
- .map(|VariantField { name, set }| {
- let set = self.check_set(set)?;
- Ok(VariantField {
+ .map(|Field { name, carries }| {
+ let set = self.check_set(carries)?;
+ Ok(Field {
name: name.clone(),
- set,
+ carries: set,
})
})
.collect::<Result<Vec<_>, _>>()?;
@@ -161,9 +161,9 @@ impl CheckerState {
let sub_elements = fields
.iter()
.map(
- |RecordField {
+ |Field {
name: f_n,
- set: f_s,
+ carries: f_s,
}| {
let f_e = assignations
.get(f_n)
@@ -188,7 +188,7 @@ impl CheckerState {
} => {
// globally unique projections mean we know what the sets going
// in and out must be
- let Field {
+ let OwnedField {
field: field_set,
owner: owner_set,
} = self.lookup_record_field(&field)?;
@@ -238,7 +238,7 @@ impl CheckerState {
// globally unique injections mean that we know what the sets
// going in and out must be, but compared to projections their
// roles are here interchanged
- let Field {
+ let OwnedField {
field: field_set,
owner: owner_set,
} = self.lookup_variant_field(&field)?;
@@ -327,7 +327,7 @@ impl CheckerState {
let mut computed_output = None;
let mut processed_arms = Vec::new();
for arm in arms {
- let Field {
+ let OwnedField {
field: field_set, ..
} = self.lookup_variant_field(&arm.tag)?;