Fennel: /home/pub/open/dev/fennel/calculator/ExtDateTime.cpp File Reference (original) (raw)
Registers extended instructions relating to date, time, and timestamp values.
00260 {
00261 assert(eit != NULL);
00262
00263 vector params_V_I64;
00264 params_V_I64.push_back(STANDARD_TYPE_VARCHAR);
00265 params_V_I64.push_back(STANDARD_TYPE_INT_64);
00266
00267 vector params_C_I64;
00268 params_C_I64.push_back(STANDARD_TYPE_CHAR);
00269 params_C_I64.push_back(STANDARD_TYPE_INT_64);
00270
00271 vector params_I64_V;
00272 params_I64_V.push_back(STANDARD_TYPE_INT_64);
00273 params_I64_V.push_back(STANDARD_TYPE_VARCHAR);
00274
00275 vector params_I64_C;
00276 params_I64_C.push_back(STANDARD_TYPE_INT_64);
00277 params_I64_C.push_back(STANDARD_TYPE_CHAR);
00278
00279 vector params_I64_C_I32;
00280 params_I64_C_I32.push_back(STANDARD_TYPE_INT_64);
00281 params_I64_C_I32.push_back(STANDARD_TYPE_CHAR);
00282 params_I64_C_I32.push_back(STANDARD_TYPE_INT_32);
00283
00284 vector params_I64_I64;
00285 params_I64_I64.push_back(STANDARD_TYPE_INT_64);
00286 params_I64_I64.push_back(STANDARD_TYPE_INT_64);
00287
00288 vector params_I64;
00289 params_I64.push_back(STANDARD_TYPE_INT_64);
00290
00291 vector params_I64_I32;
00292 params_I64_I32.push_back(STANDARD_TYPE_INT_64);
00293 params_I64_I32.push_back(STANDARD_TYPE_INT_32);
00294
00295
00296 eit->add(
00297 "CastDateToStrA", params_V_I64,
00298 (ExtendedInstruction2<char*, int64_t>) NULL,
00299 &CastDateToStrA);
00300
00301 eit->add(
00302 "CastDateToStrA", params_C_I64,
00303 (ExtendedInstruction2<char*, int64_t>) NULL,
00304 &CastDateToStrA);
00305
00306 eit->add(
00307 "CastTimeToStrA", params_V_I64,
00308 (ExtendedInstruction2<char*, int64_t>) NULL,
00309 &CastTimeToStrA);
00310
00311 eit->add(
00312 "CastTimeToStrA", params_C_I64,
00313 (ExtendedInstruction2<char*, int64_t>) NULL,
00314 &CastTimeToStrA);
00315
00316 eit->add(
00317 "CastTimestampToStrA", params_V_I64,
00318 (ExtendedInstruction2<char*, int64_t>) NULL,
00319 &CastTimestampToStrA);
00320
00321 eit->add(
00322 "CastTimestampToStrA", params_C_I64,
00323 (ExtendedInstruction2<char*, int64_t>) NULL,
00324 &CastTimestampToStrA);
00325
00326
00327 eit->add(
00328 "CastStrAToDate", params_I64_V,
00329 (ExtendedInstruction2<int64_t, char*>) NULL,
00330 &CastStrAToDate);
00331
00332 eit->add(
00333 "CastStrAToDate", params_I64_C,
00334 (ExtendedInstruction2<int64_t, char*>) NULL,
00335 &CastStrAToDate);
00336
00337 eit->add(
00338 "CastStrAToTime", params_I64_V,
00339 (ExtendedInstruction2<int64_t, char*>) NULL,
00340 &CastStrAToTime);
00341
00342 eit->add(
00343 "CastStrAToTime", params_I64_C,
00344 (ExtendedInstruction2<int64_t, char*>) NULL,
00345 &CastStrAToTime);
00346
00347 eit->add(
00348 "CastStrAToTimestamp", params_I64_V,
00349 (ExtendedInstruction2<int64_t, char*>) NULL,
00350 &CastStrAToTimestamp);
00351
00352 eit->add(
00353 "CastStrAToTimestamp", params_I64_C,
00354 (ExtendedInstruction2<int64_t, char*>) NULL,
00355 &CastStrAToTimestamp);
00356
00357
00358 eit->add(
00359 "CastDateTimeToInt64", params_I64_I64,
00360 (ExtendedInstruction2<int64_t, int64_t>) NULL,
00361 &CastDateTimeToInt64);
00362
00363 eit->add(
00364 "LocalTime2", params_I64_C,
00365 (ExtendedInstruction2<int64_t, char *>) NULL,
00366 &LocalTime);
00367
00368 eit->add(
00369 "LocalTimestamp2", params_I64_C,
00370 (ExtendedInstruction2<int64_t, char *>) NULL,
00371 &LocalTimestamp);
00372
00373 eit->add(
00374 "LocalTime3", params_I64_C_I32,
00375 (ExtendedInstruction3<int64_t, char *, int32_t>) NULL,
00376 &LocalTime);
00377
00378 eit->add(
00379 "LocalTimestamp3", params_I64_C_I32,
00380 (ExtendedInstruction3<int64_t, char *, int32_t>) NULL,
00381 &LocalTimestamp);
00382
00383 eit->add(
00384 "CurrentTime1", params_I64,
00385 (ExtendedInstruction1) NULL,
00386 &CurrentTime);
00387
00388 eit->add(
00389 "CurrentTimestamp1", params_I64,
00390 (ExtendedInstruction1) NULL,
00391 &CurrentTimestamp);
00392
00393 eit->add(
00394 "CurrentTime2", params_I64_I32,
00395 (ExtendedInstruction2<int64_t, int32_t>) NULL,
00396 &CurrentTime);
00397
00398 eit->add(
00399 "CurrentTimestamp2", params_I64_I32,
00400 (ExtendedInstruction2<int64_t, int32_t>*) NULL,
00401 &CurrentTimestamp);
00402
00403 }