您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ xsGet函数代码示例

51自学网 2021-06-03 11:51:03
  C++
这篇教程C++ xsGet函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中xsGet函数的典型用法代码示例。如果您正苦于以下问题:C++ xsGet函数的具体用法?C++ xsGet怎么用?C++ xsGet使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了xsGet函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: FskSSLRead

FskErrFskSSLRead(void *a, void *buf, int *bufLen){	FskSSL *fssl = a;	FskErr err = kFskErrNone;	int len = *bufLen, nread;	if (fssl->skt == NULL)		return kFskErrOperationFailed;	xsBeginHost(fssl->vm->the);	xsTry {		xsCall1_noResult(fssl->socket, xsID("attachData"), xsHostData(fssl->skt));		xsResult = xsCall2(fssl->ssl, xsID("read"), fssl->socket, xsInteger(len));		if (xsTest(xsResult)) {			nread = xsToInteger(xsGet(xsResult, xsID("length")));			if (nread > len)				nread = len;			FskMemCopy(buf, xsGetHostData(xsResult), nread);			xsCall0_noResult(xsResult, xsID("free"));			*bufLen = nread;			err = nread == 0 ? kFskErrNoData: kFskErrNone;		}		else			err = kFskErrConnectionClosed;	} xsCatch {		if (xsHas(xsException, xsID("code")))			err = xsToInteger(xsGet(xsException, xsID("code")));		if (err == kFskErrNone)			err = kFskErrOperationFailed;	}	xsEndHost(fssl->vm->the);	return err;}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:34,


示例2: xs_ed_init

voidxs_ed_init(xsMachine *the){	ed_t *ed;	mod_t *mod;	/* mod_t* */	void *d;	/* kcl_int_t* */	kcl_err_t err;	if ((ed = crypt_malloc(sizeof(ed_t))) == NULL)		kcl_throw_error(the, KCL_ERR_NOMEM);	if ((err = kcl_ed_alloc(&ed->ctx)) != KCL_ERR_NONE) {		crypt_free(ed);		kcl_throw_error(the, err);	}	xsResult = xsGet(xsThis, xsID("mod"));	mod = xsGetHostData(xsResult);	xsResult = xsGet(xsThis, xsID("d"));	d = xsGetHostData(xsResult);	kcl_ed_init(ed->ctx, mod->ctx, d);	ed->id_x = xsID("x");	ed->id_y = xsID("y");	ed->proto_int = xsGet(xsThis, xsID("_proto_int"));	ed->proto_ecp = xsGet(xsThis, xsID("_proto_ecp"));	xsSetHostData(xsThis, ed);}
开发者ID:basuke,项目名称:kinomajs,代码行数:26,


示例3: xs_gpio_init

void xs_gpio_init(xsMachine* the){    FskErr err;    FskGPIO gpio;    SInt32 pin = 0;	GPIOdirection dir;    char *pinName = NULL;    xsVars(1);    if ((gpio = xsGetHostData(xsThis)))        xsThrowDiagnosticIfFskErr(kFskErrOperationFailed, "Digital pin %d already initialized.", (int)gpio->pinNum);    dir = stringToDirection(the, xsToString(xsGet(xsThis, xsID("_direction"))), gpio);    xsVar(0) = xsGet(xsThis, xsID("_pin"));    if (xsStringType == xsTypeOf(xsVar(0)))        pinName = xsToString(xsVar(0));    else        pin = xsToInteger(xsVar(0));    err = FskGPIONew(&gpio, pin, pinName, dir);    xsThrowDiagnosticIfFskErr(err, "Digital pin %d initialization failed with error %s.", pin, FskInstrumentationGetErrorString(err));    xsSetHostData(xsThis, gpio);}
开发者ID:kouis3940,项目名称:kinomajs,代码行数:26,


示例4: KPR_message_setRequestCertificate

void KPR_message_setRequestCertificate(xsMachine* the){	KprMessage self = xsGetHostData(xsThis);	FskSocketCertificateRecord* certs = NULL;	FskSocketCertificateRecord certsRecord = {		NULL, 0,		NULL,		NULL,		NULL, 0,	};	if (xsIsInstanceOf(xsArg(0), xsObjectPrototype)) {		certs = &certsRecord;		if (xsHas(xsArg(0), xsID("certificates"))) {			certs->certificates = (void*)xsToString(xsGet(xsArg(0), xsID("certificates")));			certs->certificatesSize = FskStrLen(certs->certificates);		}		if (xsHas(xsArg(0), xsID("policies"))) {			certs->policies = xsToString(xsGet(xsArg(0), xsID("policies")));		}		if (xsHas(xsArg(0), xsID("key"))) {			certs->key = (void*)xsToString(xsGet(xsArg(0), xsID("key")));			certs->keySize = FskStrLen(certs->key);		}	}	else { // compatibility		certs = &certsRecord;		if (xsTest(xsArg(0))) {			certs->certificates = xsGetHostData(xsArg(0));			certs->certificatesSize = xsToInteger(xsGet(xsArg(0), xsID_length));		}		if (xsTest(xsArg(1)))			certs->policies = xsToString(xsArg(1));	}	xsThrowIfFskErr(KprMessageSetRequestCertificate(self, certs));}
开发者ID:basuke,项目名称:kinomajs,代码行数:35,


示例5: xs_mod_init

voidxs_mod_init(xsMachine *the){	mod_t *mod;	UInt32 options = xsToInteger(xsArgc) > 0 && xsTypeOf(xsArg(0)) == xsIntegerType ? xsToInteger(xsArg(0)): 0;	FskErr ferr;	if ((ferr = FskMemPtrNew(sizeof(mod_t), (FskMemPtr *)&mod)) != kFskErrNone)		cryptThrowFSK(ferr);	if ((ferr = FskMemPtrNew(sizeof(bn_mod_t), (FskMemPtr *)&mod->mod_data)) != kFskErrNone) {		FskMemPtrDispose(mod);		cryptThrowFSK(ferr);	}	mod->_mod_code = &modFuncs;	xsResult = xsGet(xsThis, xsID("z"));	/* must exist */	if (!xsIsInstanceOf(xsResult, xsGet(xsGet(xsGlobal, xsID("Arith")), xsID("z"))) || (mod->z = xsGetHostData(xsResult)) == NULL)		cryptThrow("kCryptTypeError");	xsResult = xsGet(xsThis, xsID("m"));	/* must exist */	if (!xsIsInstanceOf(xsResult, mod->z->z_protoInteger) || (mod->m = xsGetHostData(xsResult)) == NULL)		nanError();	bn_mod_init(mod->mod_data, mod->z->z_data, mod->m->cint_data, options);	xsSetHostData(xsThis, mod);}
开发者ID:Kazu-zamasu,项目名称:kinomajs,代码行数:28,


示例6: KPR_canvasPattern_setStyle

void KPR_canvasPattern_setStyle(xsMachine *the){	FskCanvas2dContext ctx = xsGetHostData(xsArg(0));	UInt32 repetition = kFskCanvas2dPatternRepeat;	FskConstBitmap bitmap = NULL;	Boolean owned = false;	xsVars(1);	xsVar(0) = xsGet(xsThis, xsID("repetition"));	if (xsTest(xsVar(0))) {		xsStringValue it = xsToString(xsVar(0));		if (!FskStrCompare(it, "no-repeat")) repetition = kFskCanvas2dPatternRepeatNone;		else if (!FskStrCompare(it, "repeat-x")) repetition = kFskCanvas2dPatternRepeatX;		else if (!FskStrCompare(it, "repeat-y")) repetition = kFskCanvas2dPatternRepeatY;		else if (!FskStrCompare(it, "repeat")) repetition = kFskCanvas2dPatternRepeat;		else xsError(kFskErrInvalidParameter);	}	xsVar(0) = xsGet(xsThis, xsID("image"));	if (xsIsInstanceOf(xsVar(0), xsGet(xsGet(xsGlobal, xsID_KPR), xsID_texture))) {		KprTexture texture = xsGetHostData(xsVar(0));		bitmap = KprTextureGetBitmap(texture, NULL, &owned);	}	else {		KprContent content = xsGetHostData(xsVar(0));		bitmap = (*content->dispatch->getBitmap)(content, NULL, &owned);	}	if (!bitmap)		xsError(kFskErrInvalidParameter);	if (xsTest(xsArg(1)))		FskCanvas2dSetStrokeStylePattern(ctx, repetition, bitmap);	else		FskCanvas2dSetFillStylePattern(ctx, repetition, bitmap);	if (!owned)		FskBitmapDispose((FskBitmap)bitmap);}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:34,


示例7: KprPromiseTargetComplete

static void KprPromiseTargetComplete(KprMessage message, void* it){	KprPromiseTarget self = it;	xsBeginHost(self->the);	xsVars(3);	xsVar(0) = xsAccess(self->resolve);	xsVar(1) = xsAccess(self->reject);	if (message->error) {		xsVar(2) = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID_KPR), xsID_message));		xsSetHostData(xsVar(2), message);		FskInstrumentedItemSendMessageDebug(message, kprInstrumentedMessageConstruct, message);		message->usage++; // host		(void)xsCallFunction1(xsVar(1), xsUndefined, xsVar(2));	}	else {		if (message->stream)			KprMessageScriptTargetGet(message, the, &xsVar(2));		else {			xsVar(2) = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID_KPR), xsID_message));			xsSetHostData(xsVar(2), message);			FskInstrumentedItemSendMessageDebug(message, kprInstrumentedMessageConstruct, message);			message->usage++; // host		}		(void)xsCallFunction1(xsVar(0), xsUndefined, xsVar(2));	}	xsEndHost(self->the);}
开发者ID:basuke,项目名称:kinomajs,代码行数:27,


示例8: KPR_canvasRadialGradient_setStyle

void KPR_canvasRadialGradient_setStyle(xsMachine *the){	FskCanvas2dContext ctx = xsGetHostData(xsArg(0));	xsNumberValue x0 = xsToNumber(xsGet(xsThis, xsID("x0")));	xsNumberValue y0 = xsToNumber(xsGet(xsThis, xsID("y0")));	xsNumberValue r0 = xsToNumber(xsGet(xsThis, xsID("r0")));	xsNumberValue x1 = xsToNumber(xsGet(xsThis, xsID("x1")));	xsNumberValue y1 = xsToNumber(xsGet(xsThis, xsID("y1")));	xsNumberValue r1 = xsToNumber(xsGet(xsThis, xsID("r1")));	UInt32 c, i;	FskCanvas2dGradientStop stops[kCanvas2DMaxGradientStops];	xsVars(2);	xsVar(0) = xsGet(xsThis, xsID("stops"));	c = xsToInteger(xsGet(xsVar(0), xsID("length")));	if (c > kCanvas2DMaxGradientStops) c = kCanvas2DMaxGradientStops;	for (i = 0; i < c; i++) {		xsVar(1) = xsGetAt(xsVar(0), xsInteger(i));		stops[i].offset = xsToNumber(xsGet(xsVar(1), xsID("offset")));		xsVar(1) = xsGet(xsVar(1), xsID("color"));		if (!KprParseColor(the, xsToString(xsVar(1)), &(stops[i].color)))			return;	}	if (xsTest(xsArg(1)))		FskCanvas2dSetStrokeStyleRadialGradient(ctx, x0, y0, r0, x1, y1, r1, c, stops);	else		FskCanvas2dSetFillStyleRadialGradient(ctx, x0, y0, r0, x1, y1, r1, c, stops);}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:27,


示例9: Library_cacheQuery

void Library_cacheQuery(xsMachine* the){    KprLibraryServer self = gLibraryServer;    UInt32 index;    KprLibraryQuery query;    FskMutexAcquire(self->queryMutex);    index = self->queryIndex % kQueryCount;    query = self->queries[index];    if (query) {        KprLibraryQueryDispose(query);        self->queries[index] = NULL;    }    KprLibraryQueryNew(&query);    FskInstrumentedItemSetOwner(query, self);    xsEnterSandbox();    query->index = self->queryIndex;    query->info = FskStrDoCopy(xsToString(xsGet(xsArg(0), xsID("info"))));    query->kind = xsToInteger(xsGet(xsArg(0), xsID("kind")));    query->mime = FskStrDoCopy(xsToString(xsGet(xsArg(0), xsID("mime"))));    query->url = FskStrDoCopy(xsToString(xsGet(xsArg(0), xsID("url"))));    xsResult = xsGet(xsArg(0), xsID("authorization"));    if (xsTest(xsResult))        query->authorization = FskStrDoCopy(xsToString(xsResult));    xsLeaveSandbox();    self->queries[index] = query;    xsResult = xsInteger(self->queryIndex);    self->queryIndex++;    FskMutexRelease(self->queryMutex);}
开发者ID:dadongdong,项目名称:kinomajs,代码行数:29,


示例10: KPR_canvasRenderingContext2D_cloneImageData

// image datavoid KPR_canvasRenderingContext2D_cloneImageData(xsMachine *the){	FskCanvas2dContext ctx = xsGetHostData(xsThis);	FskCanvas2dImageData data = xsGetHostData(xsArg(0));	data = FskCanvas2dCloneImageData(ctx, data);	xsResult = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID("KPR")), xsID("imageData")));	xsSetHostData(xsResult, data);}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:9,


示例11: scanStopTag

void scanStopTag(void *data, const char *name){	Scanner* self = data;	xsMachine* the = self->the;	scanText(data);	xsArrayCacheEnd(xsVar(CHILDREN));	xsResult = xsGet(xsResult, xsID_parent);	xsVar(CHILDREN) = xsGet(xsResult, xsID_children);}
开发者ID:basuke,项目名称:kinomajs,代码行数:9,


示例12: KPR_canvasRenderingContext2D_createImageData

// pixel manipulationvoid KPR_canvasRenderingContext2D_createImageData(xsMachine *the){	FskCanvas2dContext ctx = xsGetHostData(xsThis);	xsNumberValue sw = xsToNumber(xsArg(0));	xsNumberValue sh = xsToNumber(xsArg(1));	FskCanvas2dImageData data = FskCanvas2dCreateImageData(ctx, sw, sh);	xsResult = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID("KPR")), xsID("imageData")));	xsSetHostData(xsResult, data);}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:10,


示例13: KPR_canvasRenderingContext2D_drawImage

// drawing imagesvoid KPR_canvasRenderingContext2D_drawImage(xsMachine *the){	FskCanvas2dContext ctx = xsGetHostData(xsThis);	xsIntegerValue c = xsToInteger(xsArgc);	FskConstCanvas cnv = NULL;	FskBitmap bitmap = NULL;	Boolean owned = false;	xsVars(1);	if (xsIsInstanceOf(xsArg(0), xsGet(xsGet(xsGlobal, xsID_KPR), xsID_texture))) {		KprTexture texture = xsGetHostData(xsArg(0));		bitmap = KprTextureGetBitmap(texture, NULL, &owned);	}	else {		KprContent content = xsGetHostData(xsArg(0));		if (content->dispatch == &KprCanvasDispatchRecord)			cnv = ((KprCanvas)content)->cnv;		else			bitmap = (*content->dispatch->getBitmap)(content, NULL, &owned);	}	if (!cnv && !bitmap)		xsError(kFskErrInvalidParameter);	if (c > 8) {		xsNumberValue sx = xsToNumber(xsArg(1));		xsNumberValue sy = xsToNumber(xsArg(2));		xsNumberValue sw = xsToNumber(xsArg(3));		xsNumberValue sh = xsToNumber(xsArg(4));		xsNumberValue dx = xsToNumber(xsArg(5));		xsNumberValue dy = xsToNumber(xsArg(6));		xsNumberValue dw = xsToNumber(xsArg(7));		xsNumberValue dh = xsToNumber(xsArg(8));		if (cnv)			FskCanvas2dDrawSubScaledCanvas2d(ctx, cnv, sx, sy, sw, sh, dx, dy, dw, dh);		else			FskCanvas2dDrawSubScaledBitmap(ctx, bitmap, sx, sy, sw, sh, dx, dy, dw, dh);	}	else if (c > 4) {		xsNumberValue dx = xsToNumber(xsArg(1));		xsNumberValue dy = xsToNumber(xsArg(2));		xsNumberValue dw = xsToNumber(xsArg(3));		xsNumberValue dh = xsToNumber(xsArg(4));		if (cnv)			FskCanvas2dDrawScaledCanvas2d(ctx, cnv, dx, dy, dw, dh);		else			FskCanvas2dDrawScaledBitmap(ctx, bitmap, dx, dy, dw, dh);	}	else {		xsNumberValue dx = xsToNumber(xsArg(1));		xsNumberValue dy = xsToNumber(xsArg(2));		if (cnv)			FskCanvas2dDrawCanvas2d(ctx, cnv, dx, dy);		else			FskCanvas2dDrawBitmap(ctx, bitmap, dx, dy);	}	if (!owned)		FskBitmapDispose(bitmap);}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:57,


示例14: FskSSLNew

FskErrFskSSLNew(void **fsslp, const char *host, int port, Boolean blocking, long flags, int priority){	FskSSL *fssl;	FskErr err;	if ((err = FskMemPtrNewClear(sizeof(FskSSL), (FskMemPtr*)(void*)&fssl)) != kFskErrNone)		return err;	if ((err = newSSLVM(&fssl->vm)) != kFskErrNone) {		FskMemPtrDispose(fssl);		return err;	}	xsBeginHost(fssl->vm->the);	xsTry {		const char *prStr;		xsVars(2);		/* construct the options */		xsVar(0) = xsNewInstanceOf(xsObjectPrototype);		if (blocking)			xsSet(xsVar(0), xsID("blocking"), xsTrue);		if (flags & kConnectFlagsSynchronous)			xsSet(xsVar(0), xsID("synchronous"), xsTrue);		switch (priority) {		default:		case kFskNetSocketLowestPriority: prStr = "lowest"; break;		case kFskNetSocketLowPriority: prStr = "low"; break;		case kFskNetSocketMediumPriority: prStr = "medium"; break;		case kFskNetSocketHighPriority: prStr = "high"; break;		case kFskNetSocketHighestPriority: prStr = "highest"; break;		}		(void)xsSet(xsVar(0), xsID("priority"), xsString((xsStringValue)prStr));		(void)xsSet(xsVar(0), xsID("raw"), xsTrue);		xsVar(1) = xsNew3(xsGet(xsGlobal, xsID("Stream")), xsID("Socket"), xsString((xsStringValue)host), xsInteger(port), xsVar(0));		fssl->socket = xsVar(1); xsRemember(fssl->socket);		xsVar(1) = xsNew0(xsGet(xsGlobal, xsID("FskSSL")), xsID("Session"));		fssl->ssl = xsVar(1); xsRemember(fssl->ssl);	} xsCatch {		if (xsHas(xsException, xsID("code")))			err = xsToInteger(xsGet(xsException, xsID("code")));		if (err == kFskErrNone)			err = kFskErrOperationFailed;	}	xsEndHost(fssl->vm->the);	if (err == kFskErrNone) {		if (fsslp != NULL)			*fsslp = fssl;	}	else {		disposeSSLVM(fssl->vm);		FskMemPtrDispose(fssl);	}	return err;}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:55,


示例15: xs_z_init

voidxs_z_init(xsMachine *the){	z_t *z;	char *err;	if ((err = kcl_z_init(the, &z)) != NULL)		cryptThrow(err);	z->z_protoInteger = xsGet(xsGet(xsGlobal, xsID("Arith")), xsID("integer"));	xsSetHostData(xsThis, z);}
开发者ID:Kazu-zamasu,项目名称:kinomajs,代码行数:11,


示例16: parseAttributes

void parseAttributes(xsMachine* the){	xsIntegerValue c, i;	if (xsTest(xsVar(CHILDREN))) {		c = xsToInteger(xsGet(xsVar(CHILDREN), xsID_length));		for (i = 0; i < c; i++) {			xsVar(CHILD) = xsGet(xsVar(CHILDREN), i);			parseAttribute(the);		}	}}
开发者ID:basuke,项目名称:kinomajs,代码行数:11,


示例17: KPR_canvas_getContext

void KPR_canvas_getContext(xsMachine *the){	KprCanvas self = xsGetHostData(xsThis);	if (self->cnv) {		FskCanvas2dContext ctx = FskCanvasGet2dContext(self->cnv);		xsResult = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID("KPR")), xsID("canvasRenderingContext2D")));		xsSetHostData(xsResult, ctx);		xsSet(xsResult, xsID("canvas"), xsThis);		KprContentInvalidate((KprContent)self);	}}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:11,


示例18: KPR_canvasRenderingContext2D_measureText

void KPR_canvasRenderingContext2D_measureText(xsMachine *the){	FskCanvas2dContext ctx = xsGetHostData(xsThis);	xsStringValue text = xsToString(xsArg(0));	UInt16* buffer;	if (kFskErrNone == FskTextUTF8ToUnicode16NE((unsigned char*)text, FskStrLen(text), &buffer, NULL)) {		xsNumberValue width = FskCanvas2dMeasureText(ctx, buffer);		FskMemPtrDispose(buffer);		xsResult = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID("KPR")), xsID("textMetrics")));		xsSet(xsResult, xsID("width"), xsNumber(width));	}}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:12,


示例19: KPR_host_clearAllBreakpoints

void KPR_host_clearAllBreakpoints(xsMachine* the){#ifdef mxDebug	KprHost self = xsGetHostData(xsThis);	KprApplication application = (KprApplication)self->first;	xsBeginHost(application->the);	{		(void)xsCall0(xsGet(xsGet(xsGlobal, xsID("xs")), xsID("debug")), xsID("clearAllBreakpoints"));	}	xsEndHost(application->the);#endif}
开发者ID:giapdangle,项目名称:kinomajs,代码行数:12,


示例20: KprApplicationNew

FskErr KprApplicationNew(KprApplication* it, char* url, char* id, Boolean breakOnStart, Boolean breakOnExceptions){	KprCoordinatesRecord coordinates = { kprLeftRight, kprTopBottom, 0, 0, 0, 0, 0, 0 };	xsAllocation allocation = {		2 * 1024 * 1024,		1024 * 1024,		64 * 1024,		8 * 1024,		2048,		16000,		1993	};	FskErr err = kFskErrNone;	KprApplication self;		bailIfError(FskMemPtrNewClear(sizeof(KprApplicationRecord), it));	self = *it;	FskInstrumentedItemNew(self, NULL, &KprApplicationInstrumentation);	self->dispatch = &KprApplicationDispatchRecord;	self->flags = kprContainer | kprClip | kprVisible;	KprContentInitialize((KprContent)self, &coordinates, NULL, NULL);	bailIfError(KprURLMerge(gShell->url, url, &self->url));		if (id) {		self->id = FskStrDoCopy(id);			bailIfNULL(self->id);	}	self->the = xsAliasMachine(&allocation, gShell->root, self->url, self);	if (!self->the) 		BAIL(kFskErrMemFull);	FskInstrumentedItemSendMessageNormal(self, kprInstrumentedContentCreateMachine, self);	xsBeginHost(self->the);	xsResult = xsNewHostFunction(KPR_include, 1);	xsSet(xsResult, xsID("uri"), xsString(self->url));	xsNewHostProperty(xsGlobal, xsID("include"), xsResult, xsDontDelete | xsDontSet, xsDontScript | xsDontDelete | xsDontSet);	xsResult = xsNewHostFunction(KPR_require, 1);	xsSet(xsResult, xsID("uri"), xsString(self->url));	xsNewHostProperty(xsGlobal, xsID("require"), xsResult, xsDontDelete | xsDontSet, xsDontScript | xsDontDelete | xsDontSet);	xsResult = xsNewInstanceOf(xsGet(xsGet(xsGlobal, xsID("KPR")), xsID("application")));	self->slot = xsResult;	xsSetHostData(xsResult, self);	(void)xsCall1(xsGet(xsGlobal, xsID("Object")), xsID("seal"), xsResult);	xsNewHostProperty(xsGlobal, xsID("application"), xsResult, xsDontDelete | xsDontSet, xsDontScript | xsDontDelete | xsDontSet);	xsNewHostProperty(xsGlobal, xsID("shell"), xsNull, xsDontDelete | xsDontSet, xsDontScript | xsDontDelete | xsDontSet);	if (breakOnStart)		xsDebugger();    if (breakOnExceptions)		(void)xsCall1(xsGet(xsGet(xsGlobal, xsID("xs")), xsID("debug")), xsID("setBreakOnException"), xsBoolean(breakOnExceptions));	(void)xsCall1(xsGlobal, xsID("include"), xsString(self->url));	xsEndHost(self->the);	KprContentChainPrepend(&gShell->applicationChain, self, 0, NULL);bail:	return err;}
开发者ID:giapdangle,项目名称:kinomajs,代码行数:53,


示例21: KPR_host_set_debugging

void KPR_host_set_debugging(xsMachine* the){#ifdef mxDebug	KprHost self = xsGetHostData(xsThis);	KprApplication application = (KprApplication)self->first;	Boolean flag = xsToBoolean(xsArg(0));	xsBeginHost(application->the);	{		(void)xsCall1(xsGet(xsGet(xsGlobal, xsID("xs")), xsID("debug")), xsID("setConnected"), xsBoolean(flag));	}	xsEndHost(application->the);#endif}
开发者ID:giapdangle,项目名称:kinomajs,代码行数:13,


示例22: KPR_host_setBreakpoint

void KPR_host_setBreakpoint(xsMachine* the){#ifdef mxDebug	KprHost self = xsGetHostData(xsThis);	KprApplication application = (KprApplication)self->first;	xsStringValue file = xsToString(xsArg(0));	xsStringValue line = xsToString(xsArg(1));	xsBeginHost(application->the);	{		(void)xsCall2(xsGet(xsGet(xsGlobal, xsID("xs")), xsID("debug")), xsID("setBreakpoint"), xsString(file), xsString(line));	}	xsEndHost(application->the);#endif}
开发者ID:giapdangle,项目名称:kinomajs,代码行数:14,


示例23: KPR_host_get_debugging

void KPR_host_get_debugging(xsMachine* the){#ifdef mxDebug	KprHost self = xsGetHostData(xsThis);	KprApplication application = (KprApplication)self->first;	Boolean result = false;	xsBeginHost(application->the);	{		result = xsTest(xsCall0(xsGet(xsGet(xsGlobal, xsID("xs")), xsID("debug")), xsID("getConnected")));	}	xsEndHost(application->the);	xsResult = xsBoolean(result);#endif}
开发者ID:giapdangle,项目名称:kinomajs,代码行数:14,


示例24: KPR_host_set_profiling

void KPR_host_set_profiling(xsMachine* the){	KprHost self = xsGetHostData(xsThis);	KprApplication application = (KprApplication)self->first;	Boolean flag = xsToBoolean(xsArg(0));	xsBeginHost(application->the);	{		if (flag)			(void)xsCall0(xsGet(xsGlobal, xsID("xs")), xsID("startProfiling"));		else			(void)xsCall0(xsGet(xsGlobal, xsID("xs")), xsID("stopProfiling"));	}	xsEndHost(application->the);}
开发者ID:giapdangle,项目名称:kinomajs,代码行数:14,


示例25: xs_i2c_init

void xs_i2c_init(xsMachine *the){    xsI2C i2c = NULL;    FskErr err;    int address;    int sdaPin = 0, clkPin = 0, sdaDev = 0, clkDev = 0;	FskPinI2C pin = NULL;    if (xsGetHostData(xsThis))        xsThrowDiagnosticIfFskErr(kFskErrBadState, "I2C pin already initialized (SDA pin %d).", i2c->sdaPin);    address = xsToInteger(xsGet(xsThis, xsID("address")));    xsResult = xsGet(xsThis, xsID("bus"));    if (xsUndefinedType == xsTypeOf(xsResult)) {        sdaPin = xsToInteger(xsGet(xsThis, xsID("sda")));        clkPin = xsToInteger(xsGet(xsThis, xsID("clock")));		err = FskPinI2CNew(&pin, sdaPin, clkPin, kFskPinI2CNoBus);    }    else {        sdaDev = xsToInteger(xsResult);		err = FskPinI2CNew(&pin, 0, 0, sdaDev);	}    xsThrowDiagnosticIfFskErr(err, "I2C open failed %s (SDA pin %d, CLK pin %d).", FskInstrumentationGetErrorString(err), sdaPin, clkPin);    err = FskMemPtrNewClear(sizeof(xsI2CRecord), &i2c);    if (err) {        FskPinI2CDispose(pin);        xsError(err);    }        xsSetHostData(xsThis, i2c);	i2c->pin = pin;    i2c->sdaPin = sdaPin;    i2c->clkPin = clkPin;    i2c->sdaDev = sdaDev;    i2c->clkDev = clkDev;    i2c->address = (UInt8)address;    i2c->bus = sdaDev;#if SUPPORT_XS_DEBUG    if (0 != sdaPin)        snprintf(i2c->diagnosticID, sizeof(i2c->diagnosticID), "(Address 0x%x, SDA pin %d, CLK pin %d)", address, sdaPin, clkPin);    else        snprintf(i2c->diagnosticID, sizeof(i2c->diagnosticID), "(Address 0x%x, Bus %d)", address, sdaDev);#endif}
开发者ID:dadongdong,项目名称:kinomajs,代码行数:49,


示例26: fxFindModuleLoadAsDirectory

xsBooleanValue fxFindModuleLoadAsDirectory(xsMachine* the, xsStringValue base, xsStringValue name, xsIndex* id){	char node[1024];	UInt32 nodeSize;	xsStringValue slash;	FskErr err;	FskFileMapping map = NULL;	xsBooleanValue result = 0;	xsStringValue path = NULL;	unsigned char* data;	FskInt64 size;	xsSlot slot;		nodeSize = sizeof(node);	FskStrNCopy(node, base, nodeSize);	slash = FskStrRChr(node, '/');	if (slash)		*slash = 0;	FskStrNCat(node, "/", nodeSize);	FskStrNCat(node, name, nodeSize);	if (FskStrTail(node, "/") != 0)		FskStrNCat(node, "/", nodeSize);	FskStrNCat(node, "package.json", nodeSize);	err = KprURLToPath(node, &path);	if (err == kFskErrNone) {		err = FskFileMap(path, &data, &size, 0, &map);		if (err == kFskErrNone) {			xsTry {				slot = xsNewInstanceOf(xsChunkPrototype);				xsSetHostData(slot, data);				xsSetHostDestructor(slot, NULL);				xsSet(slot, xsID("length"), xsInteger(size));				slot = xsCall1(xsGet(xsGlobal, xsID("JSON")), xsID("parse"), slot);			}			xsCatch {				slot = xsUndefined;			}			if (xsTest(slot)) {				slot = xsGet(slot, xsID("main"));				if (xsTest(slot)) {					FskStrNCopy(node, name, nodeSize);					if (FskStrTail(node, "/") != 0)						FskStrNCat(node, "/", nodeSize);					FskStrNCat(node, xsToString(slot), nodeSize);					if (fxFindModuleLoadAsFile(the, base, node, id))						result = 1;				}			}		}
开发者ID:basuke,项目名称:kinomajs,代码行数:49,


示例27: kpr2jsWriteFile

void kpr2jsWriteFile(xsMachine* the){    FILE* aFile = xsGetHostData(xsThis);    int c = fprintf(aFile, "%s", xsToString(xsArg(0)));    c += xsToInteger(xsGet(xsThis, xsID("charCount")));    xsSet(xsThis, xsID("charCount"), xsInteger(c));}
开发者ID:dadongdong,项目名称:kinomajs,代码行数:7,


示例28: KprMessageScriptTargetTransform

void KprMessageScriptTargetTransform(void* it, KprMessage message, xsMachine* machine){	KprMessageScriptTarget self = it;	if (message->error) return;	xsBeginHostSandboxCode(machine, NULL);	{		xsVars(2);		{			xsTry {				void* data;				UInt32 size; 				KprMessageGetResponseBody(message, &data, &size);				if (data && size) {					xsIndex id = xsID(self->name);					if (xsHas(xsGlobal, id)) {						xsVar(0) = xsGet(xsGlobal, id);						xsVar(1) = xsNewInstanceOf(xsChunkPrototype);						xsSetHostData(xsVar(1), data);						xsSetHostDestructor(xsVar(1) , NULL);						xsSet(xsVar(1), xsID("length"), xsInteger(size));						xsResult = xsCall1(xsVar(0), xsID("parse"), xsVar(1));							self->result = xsMarshall(xsResult);					}				}			}			xsCatch {			}		}	}	xsEndHostSandboxCode();}
开发者ID:basuke,项目名称:kinomajs,代码行数:31,


示例29: KPR_canvasRenderingContext2D_isPointInPathStroke

void KPR_canvasRenderingContext2D_isPointInPathStroke(xsMachine *the){	FskCanvas2dContext	ctx			= xsGetHostData(xsThis);	FskCanvas2dPath		path		= NULL;	xsNumberValue		x, y;	if (xsIsInstanceOf(xsArg(0), xsGet(xsGet(xsGlobal, xsID_KPR), xsID("path2D")))) {	/* ctx.isPointInPathStroke(path, x, y) */		path = xsGetHostData(xsArg(0));		x = xsToNumber(xsArg(1));		y = xsToNumber(xsArg(2));	} else {																			/* ctx.isPointInPathStroke(x, y) */		x = xsToNumber(xsArg(0));		y = xsToNumber(xsArg(1));	}	xsResult = xsBoolean(FskCanvas2dIsPointInPathStroke(ctx, path, x, y));}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:16,


示例30: KPR_canvasRenderingContext2D_clip

void KPR_canvasRenderingContext2D_clip(xsMachine *the){	FskCanvas2dContext	ctx			= xsGetHostData(xsThis);	FskCanvas2dPath		path		=  NULL;	SInt32				fillRule	= kFskCanvas2dFillRuleNonZero;	int					numArgs		= xsToInteger(xsArgc);	if (numArgs > 0) {																		/* ctx.clip(), when numArgs==0 */		if (xsIsInstanceOf(xsArg(0), xsGet(xsGet(xsGlobal, xsID_KPR), xsID("path2D")))) {	/* ctx.clip(path) */			path = xsGetHostData(xsArg(0));			if (numArgs > 1)	fillRule = GetFillRule(xsToString(xsArg(1)));				/* ctx.clip(path, fillRule) */		} else {				fillRule = GetFillRule(xsToString(xsArg(0)));				/* ctx.clip(fillRule) */		}	}	FskCanvas2dPathClip(ctx, path, fillRule);}
开发者ID:afrog33k,项目名称:kinomajs,代码行数:16,



注:本文中的xsGet函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ xsID函数代码示例
C++ xsArg函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。