diff --git a/lib/modules/Protocols.pmod/X.pmod/my_struct.pmod b/lib/modules/Protocols.pmod/X.pmod/my_struct.pmod deleted file mode 100644 index 212bfda376edb2c3f8c20e28e18d831975f17d3a..0000000000000000000000000000000000000000 --- a/lib/modules/Protocols.pmod/X.pmod/my_struct.pmod +++ /dev/null @@ -1,139 +0,0 @@ -/* my_struct.pmod - * - * This should replace ADT.struct at some time. - */ - -#error Obsolete! - -#include "error.h" - -class struct { - string buffer; - int index; - - void create(void|string s) - { - buffer = s || ""; - index = 0; - } - - /* Return data, without removing it */ - string contents() - { - buffer = buffer[index..]; - index = 0; - return buffer; - } - - void add_data(string s) - { - buffer += s; - } - - string pop_data() - { - string res = buffer; - create(); - return res; - } - - void put_uint(int i, int len) - { - if (i<0) - error("ADT.struct->put_uint: negative argument.\n"); - - add_data(sprintf("%*c", len, i)); - } - - void put_var_string(string s, int len) - { - if ( (len <= 3) && (strlen(s) >= ({ -1, 0x100, 0x10000, 0x1000000 })[len] )) - error("ADT.struct->put_var_string: Field overflow.\n"); - put_uint(strlen(s), len); - add_data(s); - } - - void put_bignum(object i, int|void len) - { - if (i<0) - error("ADT.struct->put_bignum: negative argument.\n"); - put_var_string(i->digits(256), len || 2); - } - - void put_fix_string(string s) - { - add_data(s); - } - -#if 0 - void put_fix_array(array(int) data, int item_size) - { - foreach(data, int i) - put_int(i, item_size); - } - - void put_var_array(array(int) data, int item_size, int len) - { - put_int(sizeof(data), len); - put_fix_array(data, item_size); - } -#endif - - int get_uint(int len) - { - mixed i; - if ( (strlen(buffer) - index) < len) - error("ADT.struct->get_uint: no data\n"); - sscanf(buffer, "%*" + (string) index +"s%" + (string) len + "c", i); - index += len; - return i; - } - - string get_fix_string(int len) - { - string res; - - if ((strlen(buffer) - index) < len) - error("ADT.struct->get_fix_string: no data\n"); - res = buffer[index .. index + len - 1]; - index += len; - return res; - } - - string get_var_string(int len) - { - return get_fix_string(get_uint(len)); - } - - object get_bignum(int|void len) - { -// return Gmp.mpz(get_var_string(len || 2), 256); - } - - string get_rest() - { - string s = buffer[index..]; - create(); - return s; - } - -#if 0 - array(mixed) get_fix_array(int item_size, int size) - { - array(mixed) res = allocate(size); - for(int i = 0; i<size; i++) - res[i] = get_int(item_size); - return res; - } - - array(mixed) get_var_array(int item_size, int len) - { - return get_fix_array(item_size, get_int(len)); - } -#endif - - int is_empty() - { - return (index == strlen(buffer)); - } -}