All pastes #906877 Raw Edit

Stuff

public c v1 · immutable
·published 2008-02-17 01:47 UTC
rendered paste body
#include "ptl.h"Ptl_String *Ptl_initStringL(wchar_t *src, size_t length){    Ptl_String *dest = Ptl_alloc(sizeof(Ptl_String)+length+1);    dest->length = length;    dest->alloc = length+1;    memcpy(dest->data, src, length);    dest->alloc[length+1] = '\0';}Ptl_String *Ptl_initString(wchar_t *str){    Ptl_String *dest = Ptl_alloc(sizeof(Ptl_String)+length+1);    int i;    dest->length = 0;    dest->alloc = 1;    for (; *str != '\0'; str++) {        dest->alloc++;        dest->data[dest->length++] = *str;    }    dest->data[dest->length] = '\0';}void Ptl_copyString(Ptl_String *dest, Ptl_String *src){    memmove(dest->data, src->data, src->length);    dest->data[src->length] = '\0';}Ptl_String *Ptl_dupString(Ptl_String *src){    Ptl_String *dest = Ptl_alloc(sizeof(Ptl_String)+src->length+1);    dest->length = src->length;    dest->alloc = src->length+1;    Ptl_copyString(dest, src);    return dest;}