/* C implementation of super::B::(super::A::id) Imported methods signatures: void NativeString_to_s( char * str ) for string::NativeString::to_s char * String_to_cstring( String recv ) for string::String::to_cstring String B_id___super( B recv ) to call super */ String B_id___impl( B recv ) { char *new_name; char *prefix = "B special "; char *super_name = String_to_cstring( B_id___super( recv ) ); new_name = calloc( strlen( prefix )+strlen( super_name )+1, sizeof(char) ); strcpy( new_name, prefix ); strcpy( new_name+strlen( prefix ), super_name ); new_name[ strlen( prefix )+strlen( super_name ) ] = '\0'; return NativeString_to_s( new_name ); }
String string___Float_to_precision_native___impl( double recv, int nb ) { #line 1103 "lib/standard/string.nit" int size; char *str; size = snprintf(NULL, 0, "%.*f", (int)nb, recv); str = malloc(size + 1); sprintf(str, "%.*f", (int)nb, recv ); return NativeString_to_s( str ); }
Array_of_String posix___Group_mem___impl( struct group* recv ) { #line 99 "/home/ouajdi/Desktop/nit/lib/standard/posix.nit" char **mem; int m; Array_of_String ret; mem = recv->gr_mem; ret = new_Array_of_String(); for (m = 0; mem[m] != NULL; m++) Array_of_String_add(ret, NativeString_to_s(mem[m])); return ret; }
/* C implementation of md5::String::md5_digest Imported methods signatures: char * String_to_cstring( String recv ) for string::String::to_cstring String NativeString_to_s( char * str ) for string::NativeString::to_s */ String String_md5___impl( String recv ) { md5_state_t state; md5_byte_t digest[16]; /* result */ char *hex_output = malloc( 33*sizeof( char ) ); int di; char *in_text; in_text = String_to_cstring( recv ); md5_init(&state); md5_append(&state, (const md5_byte_t *)in_text, strlen(in_text) ); md5_finish(&state, digest); for (di = 0; di < 16; ++di) sprintf(hex_output + di * 2, "%02x", digest[di]); hex_output[ 32 ] = '\0'; return NativeString_to_s( hex_output ); }
String posix___Passwd_passwd___impl( struct passwd* recv ) { #line 66 "/home/ouajdi/Desktop/nit/lib/standard/posix.nit" return NativeString_to_s(recv->pw_passwd); }
String posix___Group_passwd___impl( struct group* recv ) { #line 93 "/home/ouajdi/Desktop/nit/lib/standard/posix.nit" return NativeString_to_s(recv->gr_passwd); }