LispBM
Enumerations | Functions
exp_kind.h File Reference
#include "heap.h"
#include "symrepr.h"
Include dependency graph for exp_kind.h:

Go to the source code of this file.

Enumerations

enum  lbm_exp_kind {
  EXP_KIND_ERROR , EXP_SELF_EVALUATING , EXP_VARIABLE , EXP_QUOTED ,
  EXP_DEFINE , EXP_LAMBDA , EXP_IF , EXP_PROGN ,
  EXP_NO_ARGS , EXP_APPLICATION , EXP_LET , EXP_AND ,
  EXP_OR
}
 

Functions

static lbm_exp_kind lbm_exp_kind_of (lbm_value exp)
 

Enumeration Type Documentation

◆ lbm_exp_kind

A set of classes of expressions. The classification is useful for deciding upon evaluation pattern to apply

Enumerator
EXP_KIND_ERROR 

EXP_KIND_ERROR

EXP_SELF_EVALUATING 

EXP_SELF_EVALUATING

EXP_VARIABLE 

EXP_VARIABLE

EXP_QUOTED 

EXP_QUOTED

EXP_DEFINE 

EXP_DEFINE

EXP_LAMBDA 

EXP_LAMBDA

EXP_IF 

EXP_IF

EXP_PROGN 

EXP_PROGN

EXP_NO_ARGS 

EXP_NO_ARGS

EXP_APPLICATION 

EXP_APPLICATION

EXP_LET 

EXP_LET

EXP_AND 

EXP_AND

EXP_OR 

EXP_OR

Function Documentation

◆ lbm_exp_kind_of()

static lbm_exp_kind lbm_exp_kind_of ( lbm_value  exp)
inlinestatic

Classify an expression according the lbm_exp_kind classes.

Parameters
expExpression to classify.
Returns
Class that expression belongs to.