Valid-genassoc
Validate a generic association.
- Signature
(valid-genassoc genassoc table ienv)
→
(mv erp new-genassoc tyname-type expr-type return-types new-table)
- Arguments
- genassoc — Guard (genassocp genassoc).
- table — Guard (valid-tablep table).
- ienv — Guard (ienvp ienv).
- Returns
- new-genassoc — Type (genassocp new-genassoc).
- tyname-type — Type (type-optionp tyname-type).
- expr-type — Type (typep expr-type).
- return-types — Type (type-setp return-types).
- new-table — Type (valid-tablep new-table).
If the generic association has a type name,
we validate it and return the type that it denotes.
If the generic association has default,
we return nil as the tyname-type result.
Either way, we validate the expression, and return its type.