added stix_bfmtout() and stix_oofmtout()

This commit is contained in:
hyunghwan.chung
2016-06-01 15:33:03 +00:00
parent 037bbff42c
commit 0c4ce4eb04
15 changed files with 1341 additions and 180 deletions

View File

@ -573,8 +573,32 @@ struct stix_compiler_t
} mth;
};
typedef struct stix_bchbuf_t stix_bchbuf_t;
struct stix_bchbuf_t
{
stix_bch_t sbuf[128];
stix_bch_t* ptr;
stix_oow_t capa;
};
typedef struct stix_oochbuf_t stix_oochbuf_t;
struct stix_oochbuf_t
{
stix_ooch_t sbuf[128];
stix_ooch_t* ptr;
stix_oow_t capa;
};
struct stix_decoder_t
{
stix_oochbuf_t fltout;
stix_bchbuf_t fltfmt;
};
#endif
#if defined(STIX_USE_OBJECT_TRAILER)
/* let it point to the trailer of the method */
# define SET_ACTIVE_METHOD_CODE(stix) ((stix)->active_code = (stix_oob_t*)&(stix)->active_method->slot[STIX_OBJ_GET_SIZE((stix)->active_method) + 1 - STIX_METHOD_NAMED_INSTVARS])
@ -1299,6 +1323,21 @@ int stix_getprimno (
const stix_oocs_t* name
);
/* ========================================================================= */
/* fmt.c */
/* ========================================================================= */
stix_ooi_t stix_bfmtout (
stix_t* stix,
const stix_bch_t* fmt,
...
);
stix_ooi_t stix_oofmtout (
stix_t* stix,
const stix_ooch_t* fmt,
...
);
/* TODO: remove debugging functions */
/* ========================================================================= */
/* debug.c */
@ -1309,6 +1348,8 @@ void print_oocs (const stix_oocs_t* name);
void print_object (stix_t* stix, stix_oop_t oop);
void dump_object (stix_t* stix, stix_oop_t oop, const char* title);
#if defined(__cplusplus)
}
#endif