Serene Runtime 1.0.0-dev
C runtime for the Serene programming language
Loading...
Searching...
No Matches
srn_kleene_arm_t Struct Reference

One arm of a case. More...

#include <kleene.h>

Collaboration diagram for srn_kleene_arm_t:
[legend]

Data Fields

int32_t tag
 Constructor tag this arm matches.
const char ** binders
 Names bound to the constructor's fields, in order.
size_t binder_count
 Number of fields the constructor carries.
srn_kleene_node_t * body
 The body of the case.

Detailed Description

One arm of a case.

Matches a constructor tag and binds that constructor's fields to fresh locals before running the body.

Definition at line 79 of file kleene.h.

Field Documentation

◆ binder_count

size_t srn_kleene_arm_t::binder_count

Number of fields the constructor carries.

Definition at line 86 of file kleene.h.

◆ binders

const char** srn_kleene_arm_t::binders

Names bound to the constructor's fields, in order.

Definition at line 84 of file kleene.h.

◆ body

srn_kleene_node_t* srn_kleene_arm_t::body

The body of the case.

Definition at line 88 of file kleene.h.

◆ tag

int32_t srn_kleene_arm_t::tag

Constructor tag this arm matches.

This tag is basically the tag number of a constructor in a the type.

Definition at line 82 of file kleene.h.


The documentation for this struct was generated from the following file: