Ejemplo n.º 1
0
int php_uchar_minit(INIT_FUNC_ARGS) {
	zend_class_entry tmp, *ce;

	INIT_CLASS_ENTRY(tmp, "IntlChar", intlchar_methods);
	ce = zend_register_internal_class(&tmp);

#define IC_CONSTL(name, val) \
	zend_declare_class_constant_long(ce, name, strlen(name), val);

	zend_declare_class_constant_string(ce, "UNICODE_VERSION", sizeof("UNICODE_VERISON")-1, U_UNICODE_VERSION);
	IC_CONSTL("CODEPOINT_MIN", UCHAR_MIN_VALUE)
	IC_CONSTL("CODEPOINT_MAX", UCHAR_MAX_VALUE)
	IC_CONSTL("FOLD_CASE_DEFAULT", U_FOLD_CASE_DEFAULT)
	IC_CONSTL("FOLD_CASE_EXCLUDE_SPECIAL_I", U_FOLD_CASE_EXCLUDE_SPECIAL_I)
	zend_declare_class_constant_double(ce, "NO_NUMERIC_VALUE", sizeof("NO_NUMERIC_VALUE")-1, U_NO_NUMERIC_VALUE);

	/* All enums used by the uchar APIs.  There are a LOT of them,
	 * so they're separated out into include files,
	 * leaving this source file for actual implementation.
	 */
#define UPROPERTY(name) IC_CONSTL("PROPERTY_" #name, UCHAR_##name)
#include "uproperty-enum.h"
#undef UPROPERTY

#define UCHARCATEGORY(name) IC_CONSTL("CHAR_CATEGORY_" #name, U_##name)
#include "ucharcategory-enum.h"
#undef UCHARCATEGORY

#define UCHARDIRECTION(name) IC_CONSTL("CHAR_DIRECTION_" #name, U_##name)
#include "uchardirection-enum.h"
#undef UCHARDIRECTION

#define UBLOCKCODE(name) IC_CONSTL("BLOCK_CODE_" #name, UBLOCK_##name)
#include "ublockcode-enum.h"
#undef UBLOCKCODE

	/* Smaller, self-destribing enums */
#define UOTHER(name) IC_CONSTL(#name, U_##name)
#include "uother-enum.h"
#undef UOTHER

#undef IC_CONSTL
#undef IC_CONSTS

	return SUCCESS;
}
Ejemplo n.º 2
0
void riak_init_riakBucket(TSRMLS_D) {
    zend_class_entry ce;

    INIT_CLASS_ENTRY(ce, "riakBucket", riakBucket_methods);
    riak_ce_riakBucket = zend_register_internal_class(&ce TSRMLS_CC);
    
    zend_declare_property_null(riak_ce_riakBucket, RIAK_BUCKET_CLIENT, RIAK_BUCKET_CLIENT_LEN, ZEND_ACC_PROTECTED TSRMLS_CC);
    zend_declare_property_null(riak_ce_riakBucket, RIAK_BUCKET_NAME, RIAK_BUCKET_NAME_LEN, ZEND_ACC_PROTECTED TSRMLS_CC);
    zend_declare_property_null(riak_ce_riakBucket, RIAK_CLIENT_R, RIAK_CLIENT_R_LEN, ZEND_ACC_PROTECTED TSRMLS_CC);
    zend_declare_property_null(riak_ce_riakBucket, RIAK_CLIENT_W, RIAK_CLIENT_W_LEN, ZEND_ACC_PROTECTED TSRMLS_CC);
    zend_declare_property_null(riak_ce_riakBucket, RIAK_CLIENT_DW, RIAK_CLIENT_DW_LEN, ZEND_ACC_PROTECTED TSRMLS_CC);

    /* define constants for common properties */
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_ALLOWMULTIPLES, RIAK_BUCKET_CONSTANT_ALLOWMULTIPLES_SIZE, RIAK_BUCKET_PROP_ALLOWMULTIPLES TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_BIGVCLOCK, RIAK_BUCKET_CONSTANT_BIGVCLOCK_SIZE, RIAK_BUCKET_PROP_BIGVCLOCK TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_CHASHKEYFUN, RIAK_BUCKET_CONSTANT_CHASHKEYFUN_SIZE, RIAK_BUCKET_PROP_CHASHKEYFUN TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_LASTWRITEWINS, RIAK_BUCKET_CONSTANT_LASTWRITEWINS_SIZE, RIAK_BUCKET_PROP_LASTWRITEWINS TSRMLS_CC); 
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_LINKFUN, RIAK_BUCKET_CONSTANT_LINKFUN_SIZE, RIAK_BUCKET_PROP_LINKFUN TSRMLS_CC); 
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_NVAL, RIAK_BUCKET_CONSTANT_NVAL_SIZE, RIAK_BUCKET_PROP_NVAL TSRMLS_CC); 
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_OLDVCLOCK, RIAK_BUCKET_CONSTANT_OLDVCLOCK_SIZE, RIAK_BUCKET_PROP_OLDVCLOCK TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_POSTCOMMIT, RIAK_BUCKET_CONSTANT_POSTCOMMIT_SIZE, RIAK_BUCKET_PROP_POSTCOMMIT TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_PRECOMMIT, RIAK_BUCKET_CONSTANT_PRECOMMIT_SIZE, RIAK_BUCKET_PROP_PRECOMMIT TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_SMALLVCLOCK, RIAK_BUCKET_CONSTANT_SMALLVCLOCK_SIZE, RIAK_BUCKET_PROP_SMALLVCLOCK TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_YOUNGVCLOCK, RIAK_BUCKET_CONSTANT_YOUNGVCLOCK_SIZE, RIAK_BUCKET_PROP_YOUNGVCLOCK TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_NAME, RIAK_BUCKET_CONSTANT_NAME_SIZE, RIAK_BUCKET_PROP_NAME TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_R, RIAK_BUCKET_CONSTANT_R_SIZE, RIAK_BUCKET_PROP_R TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_RW, RIAK_BUCKET_CONSTANT_RW_SIZE, RIAK_BUCKET_PROP_RW TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_W, RIAK_BUCKET_CONSTANT_W_SIZE, RIAK_BUCKET_PROP_W TSRMLS_CC);
    zend_declare_class_constant_string(riak_ce_riakBucket, RIAK_BUCKET_CONSTANT_DW, RIAK_BUCKET_CONSTANT_DW_SIZE, RIAK_BUCKET_PROP_DW TSRMLS_CC);
}
Ejemplo n.º 3
0
void cassandra_define_Cassandra(TSRMLS_D)
{
  zend_class_entry ce;
  char buf[64];

  INIT_CLASS_ENTRY(ce, "Cassandra", Cassandra_methods);
  cassandra_ce = zend_register_internal_class(&ce TSRMLS_CC);

  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_ANY"),          CASS_CONSISTENCY_ANY TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_ONE"),          CASS_CONSISTENCY_ONE TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_TWO"),          CASS_CONSISTENCY_TWO TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_THREE"),        CASS_CONSISTENCY_THREE TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_QUORUM"),       CASS_CONSISTENCY_QUORUM TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_ALL"),          CASS_CONSISTENCY_ALL TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_LOCAL_QUORUM"), CASS_CONSISTENCY_LOCAL_QUORUM TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_EACH_QUORUM"),  CASS_CONSISTENCY_EACH_QUORUM TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_SERIAL"),       CASS_CONSISTENCY_SERIAL TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_LOCAL_SERIAL"), CASS_CONSISTENCY_LOCAL_SERIAL TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("CONSISTENCY_LOCAL_ONE"),    CASS_CONSISTENCY_LOCAL_ONE TSRMLS_CC);

  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("VERIFY_NONE"),          CASS_SSL_VERIFY_NONE TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("VERIFY_PEER_CERT"),     CASS_SSL_VERIFY_PEER_CERT TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("VERIFY_PEER_IDENTITY"), CASS_SSL_VERIFY_PEER_IDENTITY TSRMLS_CC);

  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("BATCH_LOGGED"),   CASS_BATCH_TYPE_LOGGED TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("BATCH_UNLOGGED"), CASS_BATCH_TYPE_UNLOGGED TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("BATCH_COUNTER"),  CASS_BATCH_TYPE_COUNTER TSRMLS_CC);

  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_DISABLED"), CASS_LOG_DISABLED TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_CRITICAL"), CASS_LOG_CRITICAL TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_ERROR"),    CASS_LOG_ERROR TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_WARN"),     CASS_LOG_WARN TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_INFO"),     CASS_LOG_INFO TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_DEBUG"),    CASS_LOG_DEBUG TSRMLS_CC);
  zend_declare_class_constant_long(cassandra_ce, ZEND_STRL("LOG_TRACE"),    CASS_LOG_TRACE TSRMLS_CC);

  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_TEXT"),      "text" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_ASCII"),     "ascii" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_VARCHAR"),   "varchar" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_BIGINT"),    "bigint" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_SMALLINT"),  "smallint" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_TINYINT"),   "tinyint" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_BLOB"),      "blob" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_BOOLEAN"),   "boolean" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_COUNTER"),   "counter" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_DECIMAL"),   "decimal" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_DOUBLE"),    "double" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_FLOAT"),     "float" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_INT"),       "int" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_TIMESTAMP"), "timestamp" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_UUID"),      "uuid" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_VARINT"),    "varint" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_TIMEUUID"),  "timeuuid" TSRMLS_CC);
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("TYPE_INET"),      "inet" TSRMLS_CC);

  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("VERSION"), PHP_CASSANDRA_VERSION_FULL TSRMLS_CC);

  snprintf(buf, sizeof(buf), "%d.%d.%d%s",
           CASS_VERSION_MAJOR, CASS_VERSION_MINOR, CASS_VERSION_PATCH,
           strlen(CASS_VERSION_SUFFIX) > 0 ? "-" CASS_VERSION_SUFFIX : "");
  zend_declare_class_constant_string(cassandra_ce, ZEND_STRL("CPP_DRIVER_VERSION"), buf TSRMLS_CC);
}