#ifndef DDL_ENC_H_ #define DDL_ENC_H_ #include "EXTERN.h" #include "perl.h" typedef struct PTABLE * ptable_ptr; typedef struct { char *buf_start; /* ptr to "physical" start of output buffer */ char *buf_end; /* ptr to end of output buffer */ char *pos; /* ptr to current position within output buffer */ U32 flags; /* flag-like options: See F_* defines in ddl_enc.c */ unsigned int depth; /* current Perl-ref recursion depth */ ptable_ptr seenhash; /* ptr table for avoiding circular refs */ } ddl_encoder_t; ddl_encoder_t *build_encoder_struct(pTHX_ HV *opt); /* entry point */ void ddl_dump_sv(pTHX_ ddl_encoder_t *enc, SV *src); #endif