Deep-Encode
view release on metacpan or search on metacpan
}
}
MODULE = Deep::Encode PACKAGE = Deep::Encode
void
deep_utf8_decode( SV *data )
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 0;
a_args.type = DEEP_CALL_INPLACE ;
a_args.str_pos = 1;
a_args.argc = 2;
a_args.argv[0] = (SV *) get_cv( "utf8::decode", 0);
if ( ! a_args.argv[0] )
croak ("Fail locate &utf8::decode");
deep_walk_imp( data, & a_args );
void
deep_utf8_encode( SV *data )
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 0;
a_args.type = DEEP_CALL_INPLACE ;
a_args.str_pos = 1;
a_args.argc = 2;
a_args.argv[0] = (SV *) get_cv( "utf8::encode", 0);
if ( ! a_args.argv[0] )
croak ("Fail locate &utf8::encode");
deep_walk_imp( data, & a_args );
void
deep_from_to_00( SV *data, SV *from, SV* to )
PROTOTYPE: $$$
PPCODE:
struct pp_args a_args;
a_args.noskip = 0;
a_args.type = DEEP_FUNCTION;
a_args.callback = from_to_cb_00;
a_args.argv[0] = find_encoding( &a_args, from );
a_args.argv[1] = find_encoding( &a_args, to );
deep_walk_imp( data, & a_args );
void
deep_from_to( SV *data, SV *from, SV* to )
PROTOTYPE: $$$
PPCODE:
struct pp_args a_args;
a_args.noskip = 0;
a_args.type = DEEP_FUNCTION;
a_args.fastinit = 0;
a_args.callback = from_to_cb;
a_args.argv[0] = find_encoding( &a_args, from );
a_args.argv[1] = find_encoding( &a_args, to );
deep_walk_imp( data, & a_args );
void
deep_encode_00( SV *data, SV* encoding )
PROTOTYPE: $$
PPCODE:
struct pp_args a_args;
a_args.type = DEEP_METHOD_TEMP;
a_args.fastinit = -1;
a_args.method = "encode";
a_args.noskip = 0;
a_args.str_pos = 1;
a_args.argc = 2;
a_args.argv[0] = find_encoding( & a_args, encoding );
a_args.argv[1] = 0;
deep_walk_imp( data, & a_args );
void
deep_decode_00( SV *data, SV* encoding )
PROTOTYPE: $$
PPCODE:
struct pp_args a_args;
a_args.type = DEEP_METHOD_TEMP;
a_args.fastinit = -1;
a_args.method = "decode";
a_args.noskip = 0;
a_args.str_pos = 1;
a_args.argc = 2;
a_args.argv[0] = find_encoding( & a_args, encoding );
a_args.argv[1] = 0;
deep_walk_imp( data, & a_args );
void
deep_encode( SV *data, SV* encoding )
PROTOTYPE: $$
PPCODE:
struct pp_args a_args;
a_args.type = DEEP_METHOD_TEMP;
a_args.method = "encode";
a_args.noskip = 0;
a_args.str_pos = 1;
a_args.fastinit = 0;
a_args.argc = 2;
a_args.argv[0] = find_encoding( & a_args, encoding );
a_args.argv[1] = 0;
deep_walk_imp( data, & a_args );
void
deep_decode( SV *data, SV* encoding )
PROTOTYPE: $$
PPCODE:
struct pp_args a_args;
a_args.type = DEEP_METHOD_TEMP;
a_args.method = "decode";
a_args.noskip = 0;
a_args.str_pos = 1;
a_args.argc = 2;
a_args.fastinit = 0;
a_args.argv[0] = find_encoding( & a_args, encoding );
a_args.argv[1] = 0;
deep_walk_imp( data, & a_args );
void
deep_utf8_off( SV *data)
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 1;
a_args.type = DEEP_FUNCTION;
a_args.callback = utf8_off_cb;
a_args.counter = 0;
deep_walk_imp( data, & a_args );
mXPUSHi( a_args.counter );
void
deep_utf8_on( SV *data)
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 1;
a_args.type = DEEP_FUNCTION;
a_args.callback = utf8_on_cb;
a_args.counter = 0;
deep_walk_imp( data, & a_args );
mXPUSHi( a_args.counter );
void
deep_utf8_downgrade( SV *data)
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 1;
a_args.type = DEEP_FUNCTION;
a_args.callback = utf8_downgrade_cb;
a_args.counter = 0;
deep_walk_imp( data, & a_args );
mXPUSHi( a_args.counter );
void
deep_utf8_upgrade( SV *data)
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 1;
a_args.type = DEEP_FUNCTION;
a_args.callback = utf8_upgrade_cb;
a_args.counter = 0;
deep_walk_imp( data, & a_args );
mXPUSHi( a_args.counter );
void
deep_utf8_check( SV *data)
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
a_args.noskip = 1;
a_args.type = DEEP_FUNCTION;
a_args.callback = utf8_check_encoding_cb;
a_args.counter = 1;
deep_walk_imp( data, &a_args );
mXPUSHi( a_args.counter );
void
deep_str_clone( SV *data )
PROTOTYPE: $
PPCODE:
struct pp_args a_args;
SV * R;
a_args.noskip = 0;
R = deep_clone_imp( data, &a_args );
if ( R ){
sv_2mortal( R );
XPUSHs( R );
}
else {
XPUSHs( data );
( run in 1.237 second using v1.01-cache-2.11-cpan-5511b514fd6 )