Esempio n. 1
0
static KMETHOD PyObject_toInt(KonohaContext *kctx, KonohaStack *sfp)
{
	kPyObject *po = (kPyObject*)sfp[0].asObject;
	long v = PyInt_AsLong(po->self);
	if(PyErr_Occurred()) {
		v = 0;
	}
	RETURNi_(v);
}
Esempio n. 2
0
static KMETHOD MethodFunc_invokeAbstractMethod(KonohaContext *kctx, KonohaStack *sfp)
{
//	kMethod *mtd = sfp[K_MTDIDX].mtdNC;
//	ktype_t rtype = mtd->pa->rtype;
//	if (rtype != TY_void) {
//		if (TY_isUnbox(rtype)) {
//			RETURNi_(0);
//		} else {
//			KonohaClass *ct = CT_(rtype);
//			kObject *nulval = ct->defaultValueAsNull;
//			RETURN_(nulval);
//		}
//	}
	RETURNi_(0);
}
static METHOD Object_hashCode(Ctx *ctx, knh_sfp_t *sfp, long rix)
{
	knh_hashcode_t h = ClassTBL(knh_Object_bcid(sfp[0].o)).cspi->hashCode(ctx, sfp);
	RETURNi_(h);
}
Esempio n. 4
0
/* float to int */
static KMETHOD Float_toInt(KonohaContext *kctx, KonohaStack *sfp)
{
	RETURNi_((kint_t)sfp[0].floatValue);
}