4c5f65d96dncd: implement NCDBuildProgram and make ncd.c utilize it. This finishes the initial implementation of the include system.
ambrop7
2012-12-04 18:25:43 +00:00
ce803281eencd: NCDAst: implement NCDProgram_RemoveElem() and NCDProgram_ReplaceElemWithProgram()
ambrop7
2012-12-04 01:05:04 +00:00
7d3cb00ab7ncd: NCDConfigParser: add support for include directives
ambrop7
2012-12-03 21:05:35 +00:00
86486afb5fncd: NCDConfigTokenizer: add include token
ambrop7
2012-12-03 20:07:40 +00:00
aa9c5c4550ncd: NCDConfigParse_parse.y: allow inputs without any processes or templates. This removes some duplication and will make adding support for include directives easier to implement.
ambrop7
2012-12-03 19:58:51 +00:00
bc17a671edncd: extend AST with include directives
ambrop7
2012-12-03 19:17:37 +00:00
eaddedf5e0ncd: modules: alias: make use of make_fast_names.h
ambrop7
2012-12-02 20:25:12 +00:00
77fa26889encd: extra/make_fast_names.h: rename the init function to _InitNames(), add _FreeNames() and _GetNames()
ambrop7
2012-12-02 20:23:25 +00:00
af1cbca359ncd: add extra/make_fast_names.h, which is a generalized version of the name parsing code from the alias module
ambrop7
2012-12-02 20:00:41 +00:00
494455eb5bncd: modules: call2: micro-optimization. Instead of keeping an 'embed' flag to determine how object resolution is performed, use different object resolution callbacks for each mode.
ambrop7
2012-12-02 18:19:43 +00:00
520cec03fdncd: modules: remove call module, and rename the call2() command from the call2 module to call(). This way the call() command remains the same, but callrefhere() is gone for good.
ambrop7
2012-12-02 16:37:47 +00:00
da9d7745a0ncd: modules: call2: remove some commands nobody is probably using
ambrop7
2012-12-02 16:29:39 +00:00
86000dd3d0ncd: move NCDIfConfig to extra, as it's not a core part of the interpreter
ambrop7
2012-12-01 02:46:53 +00:00
00c87d69cbncd: add extra/build_cmdline, to be used by the upcoming sys.start_process() module
ambrop7
2012-12-01 02:24:07 +00:00
affc280af4ncd: NCDModuleIndex: increase the maximum type length, needed by the upcoming sys.start_process() module
ambrop7
2012-12-01 00:33:43 +00:00
2fe1885612add forgotten change from previous commit
ambrop7
2012-11-30 22:36:30 +00:00
e1a3b6cbe2system: BReactor, BConnection: properly handle HUP event so that it is possible to ready any remaining data after a HUP is received. This happens in particular when reading from a pipe to a child process and the child closes its end of the pipe.
ambrop7
2012-11-30 22:30:34 +00:00
cd6a51612dsystem: BConnection_unix: refactor flag variables into state variables
ambrop7
2012-11-30 21:33:30 +00:00
0e54c2280bncd: NCDInterpreter: use a STATEMENT_LOG macro to check whether we would actually log the message before calling statement_log(). This improves performance.
ambrop7
2012-11-30 02:07:16 +00:00
b4252374bbncd: NCDModule, NCDInterpreter: report module errors to interpreter as a separate event, not by setting a flag
ambrop7
2012-11-30 01:47:59 +00:00
62917f151encd: NCDVal: enforce a maximum value depth to avoid stack overflows
ambrop7
2012-11-20 13:44:28 +00:00
27357f6b80ncd: modules: substr: optimize when input is an ID-string. That is, return the result as an external string without a reference target.
ambrop7
2012-11-18 19:20:50 +00:00
79bc3b7794ncd: NCDVal: allow external strings to not be associated with a reference target
ambrop7
2012-11-18 18:01:05 +00:00
05454fc384ncd: NCDVal: optimize NCDVal_StringHasNulls() and NCDVal_IsStringNoNulls() for ID-strings
ambrop7
2012-11-18 17:49:33 +00:00
c946119f9dncd: NCDStringIndex: support null bytes in strings
ambrop7
2012-11-18 17:21:11 +00:00
2d78cb5452ncd: modules: process_manager: add a two-argument version of start() without a process identifier argument
ambrop7
2012-11-15 00:50:13 +00:00
6badbd184cncd: modules: process_manager: Refactoring. Also allow arbitrary values for process names, not just strings.
ambrop7
2012-11-14 23:42:27 +00:00
ef7afa8904ncd: modules: socket: improve performance by exposing the read data as an external string, avoiding a copy
ambrop7
2012-11-11 21:32:26 +00:00
84c747abe8ncd: modules: socket: use NCDBuf for reading
ambrop7
2012-11-11 21:30:49 +00:00
737f28f88cncd: modules: file_open: improve performance by exposing the read data as an external string, avoiding a copy
ambrop7
2012-11-11 17:49:23 +00:00
f2dc065bc7ncd: modules: file_open: use NCDBuf to speed up reading
ambrop7
2012-11-11 17:36:11 +00:00
2cb7d22401ncd: move some stuff only used by modules and not the interpreter into extra/
ambrop7
2012-11-11 14:52:30 +00:00
abba37f455ncd: NCDObject: Refactoring. Use just one kind of getvar/getobj callbacks. Change the state argument to callbacks to be an NCDObject poiter, and provide functions to retrieve state from that. Instead of a second state pointer (user2), use an integer (data_int). Do not allow passing NULL getvar/getobj callbacks; instead, provide dummy callbacks. Move implementation to header for better performance. Port everything to the new NCDObject interface.
ambrop7
2012-11-11 12:38:10 +00:00
b7cc052f96ncd: NCDModule: fix crash if _argN special object in a process for arguments that don't exist (N is too large)
ambrop7
2012-11-10 13:39:11 +00:00
c3ad1ea150ncd: NCDVal: reduce fastbuf size so that the size of NCDValMem remains the same as before external strings were implemented. This fixes the performance regression.
ambrop7
2012-11-10 12:23:55 +00:00