1/* blob.c */ 2blob_T *blob_alloc(void); 3int rettv_blob_alloc(typval_T *rettv); 4void rettv_blob_set(typval_T *rettv, blob_T *b); 5int blob_copy(blob_T *from, typval_T *to); 6void blob_free(blob_T *b); 7void blob_unref(blob_T *b); 8long blob_len(blob_T *b); 9int blob_get(blob_T *b, int idx); 10void blob_set(blob_T *blob, int idx, int byte); 11void blob_set_append(blob_T *blob, int idx, int byte); 12int blob_equal(blob_T *b1, blob_T *b2); 13int read_blob(FILE *fd, blob_T *blob); 14int write_blob(FILE *fd, blob_T *blob); 15char_u *blob2string(blob_T *blob, char_u **tofree, char_u *numbuf); 16blob_T *string2blob(char_u *str); 17int blob_slice_or_index(blob_T *blob, int is_range, varnumber_T n1, varnumber_T n2, int exclusive, typval_T *rettv); 18int check_blob_index(long bloblen, varnumber_T n1, int quiet); 19int check_blob_range(long bloblen, varnumber_T n1, varnumber_T n2, int quiet); 20int blob_set_range(blob_T *dest, long n1, long n2, typval_T *src); 21void blob_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg); 22void f_blob2list(typval_T *argvars, typval_T *rettv); 23void f_list2blob(typval_T *argvars, typval_T *rettv); 24/* vim: set ft=c : */ 25