void *p, size_t sz, dstr *d)
cdef class %CLASS%Encode:
+ """
+ %CLASS%([indent = '\\n'], [maxline = 72])
+
+ Obsolete %CLASS% encoder.
+ """
cdef %PREFIX%_ctx ctx
def __cinit__(me, *hunoz, **hukairz):
_%PREFIX%_init(&me.ctx)
if me.ctx.indent:
xfree(<void *>me.ctx.indent)
property indent:
+ """E.indent -> INT: indent level for new lines"""
def __get__(me):
return me.ctx.indent
def __set__(me, indent):
xfree(<void *>me.ctx.indent)
me.ctx.indent = xstrdup(indent)
property maxline:
+ """E.maxline -> INT: maximum length of line, or 0 to prevent splitting"""
def __get__(me):
return me.ctx.maxline
def __set__(me, maxline):
me.ctx.maxline = maxline
def encode(me, text):
+ """E.encode(IN) -> OUT: continue encoding"""
cdef void *p
cdef Py_ssize_t len
cdef dstr d
dstr_destroy(&d)
return rc
def done(me):
+ """E.done() -> OUT: finish encoding, returning final output"""
cdef dstr d
DCREATE(&d)
try:
return rc
def %PREFIX%_encode(text, *arg, **kw):
+ """%PREFIX%_encode(IN, [ARGS...]) -> OUT: %CLASS%-encode the string IN"""
e = %CLASS%Encode(*arg, **kw)
return e.encode(text) + e.done()
cdef class %CLASS%Decode:
+ """
+ %CLASS%()
+
+ Obsolete %CLASS% decoder.
+ """
cdef %PREFIX%_ctx ctx
def __cinit__(me, *hunoz, **hukairz):
_%PREFIX%_init(&me.ctx)
me.ctx.indent = NULL
def decode(me, text):
+ """D.encode(IN) -> OUT: continue decoding"""
cdef void *p
cdef Py_ssize_t len
cdef dstr d
dstr_destroy(&d)
return rc
def done(me):
+ """D.done() -> OUT: finish decoding, returning final output"""
cdef dstr d
DCREATE(&d)
try:
return rc
def %PREFIX%_decode(text, *arg, **kw):
+ """%PREFIX%_decode(IN) -> OUT: %CLASS%-decode the string IN"""
d = %CLASS%Decode(*arg, **kw)
return d.decode(text) + d.done()