Commit Graph

  • 59606d85fd ncd: modules: arithmetic: store the results as an integer rather than string, and use compute_decimal_repr_size() to generate the decimal representation. This provides a significant performance improvement. ambrop7 2012-10-21 00:17:32 +00:00
  • 3c72535ad2 examples/parse_number_test.c: add tests for generate_decimal_repr() ambrop7 2012-10-21 00:13:29 +00:00
  • e4efc82f9a misc/parse_number.h: implement generation of decimal strings ambrop7 2012-10-21 00:12:25 +00:00
  • 520ac5fc36 ncd: modules: value: pass through ID-strings instead of collapsing them to normal strings ambrop7 2012-10-20 22:15:16 +00:00
  • 34f46fe94a ncd: NCDVal: add NCDVal_IdStringStringIndex() ambrop7 2012-10-20 22:12:03 +00:00
  • 4420e952c5 oops... NCDStringIndex_GetBin() requires that the string contains no nulls, but ncd_get_string_id() does not verify that. This triggers assertion failures e.g. when process_manager::start() is called with a template name which contains nulls. ambrop7 2012-10-20 21:31:40 +00:00
  • 65c389a1e1 ncd: modules: make some modules not check if strings have nulls inside, but just pass them through to parsing functions which can handle nulls in the input ambrop7 2012-10-20 21:15:17 +00:00
  • dcf14442e2 ncd/value_utils.h: name value variables by what type they must be ambrop7 2012-10-20 20:51:03 +00:00
  • bc5f09f6e4 ncd: modules: process_manager: use ncd_get_string_id() instead of NCDStringIndex_GetBin() ambrop7 2012-10-20 20:49:28 +00:00
  • 51a6c807fe ncd/value_utils.h: add ncd_get_string_id() ambrop7 2012-10-20 20:48:37 +00:00
  • 0192497d91 ncd: NCDModule: remove unused NCDModuleProcess_Init() ambrop7 2012-10-20 20:38:24 +00:00
  • 982cc30386 ncd: modules: don't use NCDModuleProcess_Init(); use _InitValue() or _InitId() instead, to pass through ID-strings ambrop7 2012-10-20 20:34:18 +00:00
  • 50af137e19 ncd: modules: use ncd_read_uintmax() to parse numeric arguments ambrop7 2012-10-20 19:28:36 +00:00
  • e381f60a25 ncd/value_utils.h: fix compile error ambrop7 2012-10-20 18:24:41 +00:00
  • d6422c9f05 ncd/value_utils.h: add ncd_read_uintmax() ambrop7 2012-10-20 15:25:54 +00:00
  • 7c7e66fee2 ncd: rename static_strings_utils.h --> value_utils.h ambrop7 2012-10-20 15:23:57 +00:00
  • d8cde9e2c4 examples: add parse_number_test.c ambrop7 2012-10-20 15:17:19 +00:00
  • aef19f5e21 misc: parse_number.h: speed up parsing decimal strings by detecring overflow before doing the actual parsing ambrop7 2012-10-20 15:15:52 +00:00
  • 47d8669247 ncd: modules: call2: some ID-string optimizations ambrop7 2012-10-19 12:43:59 +00:00
  • 24b6fb3fc4 ncd: static_strings_utils.h: add ncd_is_none() ambrop7 2012-10-19 12:41:57 +00:00
  • 990c2e7099 ncd: rename boolean.h --> static_strings_utils.h ambrop7 2012-10-19 12:40:59 +00:00
  • c45469174e ncd: NCDVal: add NCDVal_StringEqualsId() ambrop7 2012-10-19 12:33:08 +00:00
  • 24aaf77d33 ncd: add static string "<none>" ambrop7 2012-10-19 12:15:58 +00:00
  • 49ea715a06 ncd: modules: arithmetic: optimize by using ID-strings for booleans ambrop7 2012-10-19 11:59:35 +00:00
  • fe474df531 ncd: add boolean.h ambrop7 2012-10-19 11:55:32 +00:00
  • 4904645020 ncd: add static strings "true" and "false" ambrop7 2012-10-19 11:54:20 +00:00
  • 5cd7da4b6a ncd: modules: call2: try to pass the template name as a string ID ambrop7 2012-10-19 02:56:19 +00:00
  • fcc39d3581 ncd: NCDModule: pass template name for process creation as a string ID ambrop7 2012-10-19 02:50:06 +00:00
  • fa7c214684 ncd: NCDVal: add NCDVal_IdStringId() ambrop7 2012-10-19 02:46:34 +00:00
  • 5edd5e7eff ncd: NCDInterpProcess: build ID-strings in argument lists ambrop7 2012-10-19 02:05:12 +00:00
  • 0e1f201d99 ncd: NCDVal: implement ID-strings ambrop7 2012-10-19 01:49:44 +00:00
  • 5ea5a974f1 ncd: NCDInterpProg: lookup processes by string ids ambrop7 2012-10-18 13:33:32 +00:00
  • f6a58006cc ncd: port some modules to func_getvar2 ambrop7 2012-10-18 01:49:14 +00:00
  • 5906ca507d ncd: cosmetic changes ambrop7 2012-10-17 23:20:54 +00:00
  • 55cc25ed3e ncd: NCDModule: get rid of struct NCDModuleInitParams in favor of struct NCDModuleInst_iparams ambrop7 2012-10-17 23:15:46 +00:00
  • f070a9f127 version 1.999.125rc2 ambrop7 2012-10-11 15:23:00 +00:00
  • 641d4d43ec update ChangeLog ambrop7 2012-10-11 15:22:24 +00:00
  • 05a7887de3 ncd: NCDStringIndex: increase initial capacity and size of bucket array ambrop7 2012-10-10 22:03:12 +00:00
  • ea9eed6af4 ncd: NCDStringIndex: use CHash_MultiplyBuckets() to increase the size of the hash table buckets array when we resize the entries array ambrop7 2012-10-10 21:49:31 +00:00
  • 2431d0361c structure: CHash: add CHash_Verify() ambrop7 2012-10-10 21:44:28 +00:00
  • 113fd7c0b9 structure: CHash: add CHash_MultiplyBuckets() ambrop7 2012-10-10 21:24:23 +00:00
  • b386b5a50a misc/balloc.h: add BReallocArray() ambrop7 2012-10-10 21:18:27 +00:00
  • c807a065f7 structure: remove CStringTrie ambrop7 2012-10-10 19:26:06 +00:00
  • 7e29861b10 ncd: NCDObject: store object type as a string identifier instead of char pointer ambrop7 2012-10-10 18:41:15 +00:00
  • 7227efdfe4 ncd: make NCDModule structs non-const (for next commit which will need to modify them) ambrop7 2012-10-10 17:35:29 +00:00
  • 5e10dff851 oops, we need to make struct NCDModule non-const, not struct NCDModuleGroup. So revert previous commit. ambrop7 2012-10-10 15:40:48 +00:00
  • 8ed78cb35d ncd: make NCDModuleGroup structs non-const (for next commit which will need to modify them) ambrop7 2012-10-10 15:30:15 +00:00
  • 8d37e18d31 ncd: get some more stuff working nicely with string id's ambrop7 2012-10-10 10:19:48 +00:00
  • 3c304cdc77 ncd: NCDInterpProcess: handcraft a hash table instead of using CHash (it's less code) ambrop7 2012-10-09 23:30:30 +00:00
  • de8f155c29 ncd: NCDInterpProcess: store statement names as id's and use a hash table not trie to look for them ambrop7 2012-10-09 22:37:49 +00:00
  • 8c92bac09b ncd: modules: alias: optimize by preallocating some memory for string id's and not strdup'ing the input string ambrop7 2012-10-09 21:15:01 +00:00
  • 47127f8564 ncd: NCDStringIndex: add NCDStringIndex_LookupBin() and NCDStringIndex_GetBin() ambrop7 2012-10-09 20:41:12 +00:00
  • aafa614ea8 misc/hashfun.h: add badvpn_djb2_hash_bin() ambrop7 2012-10-09 19:47:55 +00:00
  • e424388a3d remove misc/split_string.h ambrop7 2012-10-09 00:48:43 +00:00
  • 2ed52dc607 cosmetic changes ambrop7 2012-10-09 00:43:44 +00:00
  • a157cf9829 ncd: use unique string identifiers when resolveing variable/object names. The goal is to improve performance by eliminating strcmp() and similar, but this isn't any faster at this point because stuff just turns identifiers back into strings. ambrop7 2012-10-09 00:40:25 +00:00
  • 147e005e08 version 1.999.125rc1 ambrop7 2012-10-07 22:32:05 +00:00
  • 880b378ce7 update ChangeLog ambrop7 2012-10-07 22:31:23 +00:00
  • a3ea934a96 ncd: NCDModule: don't store a pointer to struct NCDModuleInst_iparams in NCDModuleInst. Instead, store it in struct NCDModuleInst_params, to save memory. ambrop7 2012-10-07 21:45:06 +00:00
  • ed95b609d4 ncd: NCDModuleInst: don't store "args" and "method_user" in the NCDModuleInst struct. Instead, pass them at instance initialization, via a struct. ambrop7 2012-10-07 19:58:51 +00:00
  • 0d4ac51bb3 ncd: port modules/alias to func_new2 (missed in previous commit) ambrop7 2012-10-07 17:06:19 +00:00
  • 0b235e7b6d ncd: NCDModule: remove func_new and port all modules that used it to func_new2 ambrop7 2012-10-07 17:04:43 +00:00
  • 9a7f7e0e1c ncd: NCDModuleInst: don't store a user pointer (to the struct statement), and instead pass a pointer to NCDModuleInst to callbacks ambrop7 2012-10-07 16:35:32 +00:00
  • 907aba2046 misc/offset.h: in UPPER_OBJECT, cast to char * not to uint8_t * ambrop7 2012-10-07 10:55:05 +00:00
  • 826ebc98b5 ncd: ncd.c: don't store a pointer to the process in every statement. Instead, compute it from the statement index. ambrop7 2012-10-06 23:06:13 +00:00
  • f28490976e ncd: ncd.c: merge the state and have_error members into a single member ambrop7 2012-10-06 22:18:43 +00:00
  • 590f394096 ncd: ncd.c: save memory by not storing pointer to and size of preallocated process memory. Instead, to figure out if statement memory was individually allocated or is part of preallocated memory, use negative mem_size for individually allocated. ambrop7 2012-10-06 21:24:20 +00:00
  • da424e04ab system: BReactor: don't store a callback void pointer in BSmallTimer, instead just pass the BSmallTimer pointer to the callback. ambrop7 2012-10-06 20:20:52 +00:00
  • 843a1637e1 misc/balloc.h: remove unused BAllocTwoArrays, BAllocThreeArrays ambrop7 2012-10-06 17:46:21 +00:00
  • 3e66decc2b ncd: use BAlloc and BSizeAdd/BSizeAlign to allocate process memory, and use a flexible array member for statements ambrop7 2012-10-06 17:44:27 +00:00
  • f04080f95b misc/balloc.h: add BSizeAdd and BSizeAlign ambrop7 2012-10-06 15:36:28 +00:00
  • be82ff9462 ncd: ncd.c: use BSmallPending instead of BPending ambrop7 2012-10-06 14:07:56 +00:00
  • e5173e0d23 cosmetic changes ambrop7 2012-10-06 14:06:35 +00:00
  • d547f87417 base: BPending: transform BPending into BSmallPending, which doesn't keep a pointer to its BPendingGroup, and implement BPending on top of BSmallPending ambrop7 2012-10-06 14:01:36 +00:00
  • fc56e70160 ncd: ncd.c: use BSmallTimer instead of BTimer to save 8 bytes per process ambrop7 2012-10-06 13:22:29 +00:00
  • 70e6c3ddd3 system: BReactor: transform BTimer into BSmallTimer which doesn't have a default time, and implement BTimer on top of BSmallTimer ambrop7 2012-10-06 13:16:12 +00:00
  • d96b79fced system: BReactor: imporove memory usage of BTimer ambrop7 2012-10-06 12:14:39 +00:00
  • c963408caf system: BTime: add BTIME_MIN ambrop7 2012-10-06 12:01:09 +00:00
  • 895e15c361 ncd: modules: assert: add assert_false() ambrop7 2012-10-05 02:19:02 +00:00
  • 6687d9b4fc remove unused generated file ambrop7 2012-10-05 01:55:17 +00:00
  • bb9ca1fe73 ncd: rename NCDValue{Generator,Parser} to NCDVal{Generator,Parser} ambrop7 2012-10-05 01:45:22 +00:00
  • 41ccb665db ncd: NCDAst: cosmetic changes ambrop7 2012-10-05 01:17:27 +00:00
  • b3ad397377 ncd: NCDAst: make NCDValue_MapPrepend return int instead of NCDValue * ambrop7 2012-10-05 01:04:52 +00:00
  • cdc19fc296 ncd: NCDAst: remove unused NCDValue_Compare ambrop7 2012-10-05 01:01:27 +00:00
  • fb5472fb5d ncd: NCDAst: cosmetic changes ambrop7 2012-10-05 00:59:46 +00:00
  • 777c74bff9 ncd: NCDAst: cosmetic changes ambrop7 2012-10-05 00:58:45 +00:00
  • 6cfaee0f78 ncd: NCDAst: use a linked list instead of AVL tree to store map elements. There is no reason to use an AVL tree at the parsing stage. ambrop7 2012-10-04 19:27:27 +00:00
  • c1ac3f62d3 ncd: NCDAst: remove comments for NCDValue stuff, this is becoming internal and will change soon ambrop7 2012-10-04 18:11:13 +00:00
  • 0ce0fa9264 ncd: NCDAst: remove unused NCDValue functions ambrop7 2012-10-04 16:15:36 +00:00
  • 9ce50b23fb ncd: remove NCDValCompat ambrop7 2012-10-04 16:04:04 +00:00
  • 2dcfbced3b ncd: move NCDValue into NCDAst ambrop7 2012-10-04 15:01:43 +00:00
  • 5b713bcadf ncd: NCDValueGenerator: remove the NCDValue interface, leaving only the NCDVal interface ambrop7 2012-10-03 22:34:31 +00:00
  • 5558252ce5 ncd: NCDValueParser: remove the NCDValue interface, leaving only the NCDVal interface ambrop7 2012-10-03 22:27:15 +00:00
  • c4f99cdfe9 ncd: NCDRequestClient: port NCDValue-->NCDVal ambrop7 2012-10-03 22:22:17 +00:00
  • c0a159c590 ncd/tests/parse.ncd: add some more value parsing ambrop7 2012-10-03 21:46:57 +00:00
  • 2752d74a90 oops... parse empty maps as maps and not lists ambrop7 2012-10-03 21:39:14 +00:00
  • eff8602df6 regenerate bison/flex stuff for BPredicate ambrop7 2012-10-03 20:53:27 +00:00
  • 4e0dbb3096 ncd: NCDValueParser: use NCDValCons to construct values ambrop7 2012-10-03 20:50:33 +00:00
  • 3571b03fed ncd: NCDValCons: cosmetic changes ambrop7 2012-10-03 14:46:35 +00:00
  • 7ca97e219a ncd: add NCDValCons, which implements efficient construction of values without knowing list/map lengths in advance ambrop7 2012-10-03 13:59:05 +00:00