mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 11:30:18 +00:00
some fix
This commit is contained in:
parent
72723d24f5
commit
881e94e8b0
@ -34,6 +34,7 @@ c11_vector c11_vector__copy(const c11_vector* self);
|
|||||||
void c11_vector__reserve(c11_vector* self, int capacity);
|
void c11_vector__reserve(c11_vector* self, int capacity);
|
||||||
void c11_vector__clear(c11_vector* self);
|
void c11_vector__clear(c11_vector* self);
|
||||||
void* c11_vector__emplace(c11_vector* self);
|
void* c11_vector__emplace(c11_vector* self);
|
||||||
|
c11_array c11_vector__submit(c11_vector* self);
|
||||||
|
|
||||||
#define c11__getitem(T, self, index) (((T*)(self)->data)[index])
|
#define c11__getitem(T, self, index) (((T*)(self)->data)[index])
|
||||||
#define c11__setitem(T, self, index, value) ((T*)(self)->data)[index] = value;
|
#define c11__setitem(T, self, index, value) ((T*)(self)->data)[index] = value;
|
||||||
|
@ -152,12 +152,13 @@ void pk_SStream__write_any(pk_SStream* self, const char* fmt, const pk_AnyStr* a
|
|||||||
|
|
||||||
py_Str pk_SStream__submit(pk_SStream* self) {
|
py_Str pk_SStream__submit(pk_SStream* self) {
|
||||||
c11_vector__push(char, &self->data, '\0');
|
c11_vector__push(char, &self->data, '\0');
|
||||||
|
c11_array a = c11_vector__submit(&self->data);
|
||||||
// TODO: optimize c11__isascii
|
// TODO: optimize c11__isascii
|
||||||
py_Str retval = {
|
py_Str retval = {
|
||||||
.size = self->data.count - 1,
|
.size = a.count - 1,
|
||||||
.is_ascii = c11__isascii((char*)self->data.data, self->data.count),
|
.is_ascii = c11__isascii((char*)a.data, a.count),
|
||||||
.is_sso = false,
|
.is_sso = false,
|
||||||
._ptr = (char*)self->data.data
|
._ptr = (char*)a.data
|
||||||
};
|
};
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
|
@ -62,3 +62,15 @@ void* c11_vector__emplace(c11_vector* self){
|
|||||||
self->count++;
|
self->count++;
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
c11_array c11_vector__submit(c11_vector* self){
|
||||||
|
c11_array retval = {
|
||||||
|
.data = self->data,
|
||||||
|
.count = self->count,
|
||||||
|
.elem_size = self->elem_size
|
||||||
|
};
|
||||||
|
self->data = NULL;
|
||||||
|
self->count = 0;
|
||||||
|
self->capacity = 0;
|
||||||
|
return retval;
|
||||||
|
}
|
||||||
|
@ -739,13 +739,8 @@ Error* pk_Lexer__process(pk_SourceData_ src, c11_array* out_tokens){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// set out_tokens
|
// set out_tokens
|
||||||
*out_tokens = (c11_array){
|
*out_tokens = c11_vector__submit(&lexer.nexts);
|
||||||
.data = lexer.nexts.data,
|
|
||||||
.count = lexer.nexts.count,
|
|
||||||
.elem_size = lexer.nexts.elem_size
|
|
||||||
};
|
|
||||||
c11_vector__ctor(&lexer.nexts, sizeof(Token));
|
|
||||||
|
|
||||||
pk_Lexer__dtor(&lexer);
|
pk_Lexer__dtor(&lexer);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user