mirror of
https://gitee.com/Lyon1998/pikapython.git
synced 2025-01-29 17:22:56 +08:00
use arg_set/get_Mem
This commit is contained in:
parent
933fad80c5
commit
174f594534
@ -153,6 +153,20 @@ Arg* arg_setContent(Arg* self, uint8_t* content, uint32_t size) {
|
||||
return content_setContent(self, content, size);
|
||||
}
|
||||
|
||||
void* arg_getMem(Arg* self) {
|
||||
return content_getContent(self) + sizeof(size_t);
|
||||
}
|
||||
|
||||
size_t arg_getMemSize(Arg* self) {
|
||||
size_t mem_size = 0;
|
||||
void* content = (void*)arg_getContent(self);
|
||||
if (NULL == content) {
|
||||
return 0;
|
||||
}
|
||||
__platform_memcpy(&mem_size, content, sizeof(size_t));
|
||||
return mem_size;
|
||||
}
|
||||
|
||||
Arg* arg_setStruct(Arg* self,
|
||||
char* name,
|
||||
void* struct_ptr,
|
||||
|
@ -113,6 +113,8 @@ int64_t arg_getInt(Arg* self);
|
||||
float arg_getFloat(Arg* self);
|
||||
void* arg_getPtr(Arg* self);
|
||||
char* arg_getStr(Arg* self);
|
||||
void* arg_getMem(Arg* self);
|
||||
size_t arg_getMemSize(Arg* self);
|
||||
Arg* arg_copy(Arg* argToBeCopy);
|
||||
|
||||
#define arg_getContent(self) ((uint8_t*)content_getContent((self)))
|
||||
|
@ -112,17 +112,31 @@ char* args_getStr(Args* self, char* name) {
|
||||
}
|
||||
|
||||
void* args_getMem(Args* self, char* name) {
|
||||
return (void*)args_getStr(self, name) + sizeof(size_t);
|
||||
if (NULL == self) {
|
||||
return NULL;
|
||||
}
|
||||
Arg* arg = args_getArg(self, name);
|
||||
if (NULL == arg) {
|
||||
return NULL;
|
||||
}
|
||||
if (NULL == arg_getContent(arg)) {
|
||||
return NULL;
|
||||
}
|
||||
return (char*)arg_getMem(arg);
|
||||
}
|
||||
|
||||
size_t args_getMemSize(Args* self, char* name) {
|
||||
size_t mem_size = 0;
|
||||
void* content = (void*)args_getStr(self, name);
|
||||
if (NULL == content) {
|
||||
if (NULL == self) {
|
||||
return 0;
|
||||
}
|
||||
__platform_memcpy(&mem_size, content, sizeof(size_t));
|
||||
return mem_size;
|
||||
Arg* arg = args_getArg(self, name);
|
||||
if (NULL == arg) {
|
||||
return 0;
|
||||
}
|
||||
if (NULL == arg_getContent(arg)) {
|
||||
return 0;
|
||||
}
|
||||
return arg_getMemSize(arg);
|
||||
}
|
||||
|
||||
int32_t args_setInt(Args* self, char* name, int64_t int64In) {
|
||||
@ -500,4 +514,3 @@ Args* New_args(Args* args) {
|
||||
Args* self = New_link(NULL);
|
||||
return self;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user