Download ADOOR_ACE/node_modules/dtrace-provider/dtrace_argument.cc from thisisAce/adoor-store: direct link, hf CLI and curl.
- Browser
- Download file 2.2 kB
-
https://huggingface.co/thisisAce/adoor-store/resolve/main/ADOOR_ACE/node_modules/dtrace-provider/dtrace_argument.cc
- Command line
-
hf download hf://thisisAce/adoor-store/ADOOR_ACE/node_modules/dtrace-provider/dtrace_argument.cc
-
curl -L -o dtrace_argument.cc https://huggingface.co/thisisAce/adoor-store/resolve/main/ADOOR_ACE/node_modules/dtrace-provider/dtrace_argument.cc
2.2 kB
| namespace node { | |
| using namespace v8; | |
| // Integer Argument | |
| void * DTraceIntegerArgument::ArgumentValue(v8::Local<Value> value) { | |
| if (value->IsUndefined()) | |
| return 0; | |
| else | |
| return (void *)(long) value->INTMETHOD->Value(); | |
| } | |
| void DTraceIntegerArgument::FreeArgument(void *arg) { | |
| } | |
| const char * DTraceIntegerArgument::Type() { | |
| return "int"; | |
| } | |
| // String Argument | |
| void * DTraceStringArgument::ArgumentValue(v8::Local<Value> value) { | |
| if (value->IsUndefined()) | |
| return (void *) strdup("undefined"); | |
| String::Utf8Value str(value->ToString()); | |
| return (void *) strdup(*str); | |
| } | |
| void DTraceStringArgument::FreeArgument(void *arg) { | |
| free(arg); | |
| } | |
| const char * DTraceStringArgument::Type() { | |
| return "char *"; | |
| } | |
| // JSON Argument | |
| DTraceJsonArgument::DTraceJsonArgument() { | |
| Nan::HandleScope scope; | |
| v8::Local<Context> context = Nan::GetCurrentContext(); | |
| v8::Local<Object> global = context->Global(); | |
| v8::Local<Object> l_JSON = global->Get(Nan::New<String>("JSON").ToLocalChecked())->ToObject(); | |
| v8::Local<Function> l_JSON_stringify | |
| = v8::Local<Function>::Cast(l_JSON->Get(Nan::New<String>("stringify").ToLocalChecked())); | |
| JSON.Reset(l_JSON); | |
| JSON_stringify.Reset(l_JSON_stringify); | |
| } | |
| DTraceJsonArgument::~DTraceJsonArgument() { | |
| JSON.Reset(); | |
| JSON_stringify.Reset(); | |
| } | |
| void * DTraceJsonArgument::ArgumentValue(v8::Local<Value> value) { | |
| Nan::HandleScope scope; | |
| if (value->IsUndefined()) | |
| return (void *) strdup("undefined"); | |
| v8::Local<Value> info[1]; | |
| info[0] = value; | |
| v8::Local<Value> j = Nan::New<Function>(JSON_stringify)->Call( | |
| Nan::New<Object>(JSON), 1, info); | |
| if (*j == NULL) | |
| return (void *) strdup("{ \"error\": \"stringify failed\" }"); | |
| String::Utf8Value json(j->ToString()); | |
| return (void *) strdup(*json); | |
| } | |
| void DTraceJsonArgument::FreeArgument(void *arg) { | |
| free(arg); | |
| } | |
| const char * DTraceJsonArgument::Type() { | |
| return "char *"; | |
| } | |
| } // namespace node | |