public static function fromValue($value)
{
switch (gettype($value)) {
case 'string':
return INativeType::TYPE_STRING;
case 'integer':
return INativeType::TYPE_INT;
case 'boolean':
return INativeType::TYPE_BOOL;
case 'double':
return INativeType::TYPE_DOUBLE;
case 'NULL':
return INativeType::TYPE_NULL;
case 'array':
return INativeType::TYPE_ARRAY;
case 'resource':
case 'unknown type':
return INativeType::TYPE_RESOURCE;
case 'object':
return self::getObject(get_class($value));
}
throw new PinqException('Unknown variable type %s given', gettype($value));
}