type fixes and bindings + notes on subtyping
This commit is contained in:
parent
7e3c7c88ea
commit
c18f56f7be
28 changed files with 2253 additions and 783 deletions
|
@ -12,20 +12,24 @@
|
|||
#define SPHO_TP_FORM_BOX 0x14
|
||||
#define SPHO_TP_FORM_FORALL 0x15
|
||||
#define SPHO_TP_FORM_APPL 0x16
|
||||
#define SPHO_TP_FORM_MEMBER 0x17
|
||||
#define SPHO_TP_FORM_NOMINAL 0x18
|
||||
|
||||
#define SPHO_TP_FORM_TRUE 0x20
|
||||
#define SPHO_TP_FORM_FALSE 0x21
|
||||
#define SPHO_TP_FORM_NOM 0x23
|
||||
#define SPHO_TP_FORM_NAME 0x23
|
||||
|
||||
#define SPHO_TP_FORM_MEMBER 0x24
|
||||
#define SPHO_TP_FORM_VAR 0x40
|
||||
|
||||
// #define SPHO_TP_FORM_SUB 0x96
|
||||
#define SPHO_TP_FORM_MASK 0xff
|
||||
|
||||
#define SPHO_TP_MOD_FIRST (SPHO_TP_FORM_MASK + 1)
|
||||
|
||||
// #define SPHO_TP_MOD_VAR (SPHO_TP_FLAG_FIRST)
|
||||
// #define SPHO_TP_MOD_NOMINAL (SPHO_TP_FLAG_FIRST << 1)
|
||||
|
||||
#define SPHO_TP_ERR(tp, err) SPHO_ERR((tp)->sc->ctx, (err))
|
||||
|
||||
//struct spho_var *spho_var_create(struct spho_scope *, char *, size_t);
|
||||
//struct spho_var *spho_var_get(struct spho_scope *, char *, size_t);
|
||||
|
||||
struct spho_tp *spho_tp_create_conj(struct spho_scope *, struct spho_tp *,
|
||||
struct spho_tp *);
|
||||
struct spho_tp *spho_tp_create_disj(struct spho_scope *, struct spho_tp *,
|
||||
|
@ -45,10 +49,11 @@ struct spho_tp *spho_tp_create_appl(struct spho_scope *, struct spho_nom *,
|
|||
struct spho_tp_l *);
|
||||
struct spho_tp *spho_tp_create_member(struct spho_scope *, struct spho_nom *,
|
||||
struct spho_tp *);
|
||||
//struct spho_tp *spho_tp_create_const(struct spho_scope *, struct spho_const *);
|
||||
// struct spho_tp *spho_tp_create_var(struct spho_scope *, struct spho_var *);
|
||||
// struct spho_tp *spho_tp_create_sub(struct spho_scope *, struct spho_tp *,
|
||||
// struct spho_tp *);
|
||||
struct spho_tp *spho_tp_create_var(struct spho_scope *, struct spho_nom *);
|
||||
struct spho_tp *spho_tp_create_nominal(struct spho_scope *, struct spho_nom *);
|
||||
|
||||
struct spho_tp_op *spho_tp_op_create(struct spho_scope *,
|
||||
struct spho_scope *, struct spho_tp *);
|
||||
|
||||
void spho_tp_destroy(struct spho_tp *);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue