Sha256: d53c1e3a06d11b83e31f0c1c8bc0127e8713cf7e861c1b9ef7544afe050c6e04
Contents?: true
Size: 1.29 KB
Versions: 33
Compression:
Stored size: 1.29 KB
Contents
#include <nan.h> #include "string.h" #include "../create_string.h" namespace SassTypes { String::String(Sass_Value* v) : SassValueWrapper(v) {} Sass_Value* String::construct(const std::vector<v8::Local<v8::Value>> raw_val, Sass_Value **out) { char const* value = ""; if (raw_val.size() >= 1) { if (!raw_val[0]->IsString()) { return fail("Argument should be a string.", out); } value = create_string(raw_val[0]); *out = sass_make_string(value); delete value; return *out; } else { return *out = sass_make_string(value); } } void String::initPrototype(v8::Local<v8::FunctionTemplate> proto) { Nan::SetPrototypeMethod(proto, "getValue", GetValue); Nan::SetPrototypeMethod(proto, "setValue", SetValue); } NAN_METHOD(String::GetValue) { info.GetReturnValue().Set(Nan::New<v8::String>(sass_string_get_value(String::Unwrap<String>(info.This())->value)).ToLocalChecked()); } NAN_METHOD(String::SetValue) { if (info.Length() != 1) { return Nan::ThrowTypeError("Expected just one argument"); } if (!info[0]->IsString()) { return Nan::ThrowTypeError("Supplied value should be a string"); } sass_string_set_value(String::Unwrap<String>(info.This())->value, create_string(info[0])); } }
Version data entries
33 entries across 31 versions & 12 rubygems