Author: sayer
Date: 2009-03-25 13:59:32 +0100 (Wed, 25 Mar 2009)
New Revision: 1334

Modified:
   trunk/apps/dsm/DSMCoreModule.cpp
   trunk/apps/dsm/DSMCoreModule.h
   trunk/apps/dsm/doc/dsm_syntax.txt
Log:
DSM inc() operation

Modified: trunk/apps/dsm/DSMCoreModule.cpp
===================================================================
--- trunk/apps/dsm/DSMCoreModule.cpp    2009-03-25 12:58:43 UTC (rev 1333)
+++ trunk/apps/dsm/DSMCoreModule.cpp    2009-03-25 12:59:32 UTC (rev 1334)
@@ -75,6 +75,7 @@
 
   DEF_CMD("set", SCSetAction);
   DEF_CMD("append", SCAppendAction);
+  DEF_CMD("inc", SCIncAction);
   DEF_CMD("log", SCLogAction);
   DEF_CMD("clear", SCClearAction);
   DEF_CMD("logVars", SCLogVarsAction);
@@ -350,6 +351,17 @@
       var_name.c_str(), sc_sess->var[var_name].c_str());
 } EXEC_ACTION_END;
 
+EXEC_ACTION_START(SCIncAction) {
+  string var_name = (arg.length() && arg[0] == '$')?
+    arg.substr(1) : arg;
+  unsigned int val = 0;
+  str2i(sc_sess->var[var_name], val);
+  sc_sess->var[var_name] = int2str(val+1);
+
+  DBG("inc: $%s now '%s'\n", 
+      var_name.c_str(), sc_sess->var[var_name].c_str());
+} EXEC_ACTION_END;
+
 CONST_ACTION_2P(SCSetTimerAction,',', false);
 EXEC_ACTION_START(SCSetTimerAction) {
 

Modified: trunk/apps/dsm/DSMCoreModule.h
===================================================================
--- trunk/apps/dsm/DSMCoreModule.h      2009-03-25 12:58:43 UTC (rev 1333)
+++ trunk/apps/dsm/DSMCoreModule.h      2009-03-25 12:59:32 UTC (rev 1334)
@@ -76,6 +76,7 @@
 
 DEF_ACTION_2P(SCSetAction);
 DEF_ACTION_2P(SCAppendAction);
+DEF_ACTION_1P(SCIncAction);
 DEF_ACTION_1P(SCClearAction);
 DEF_ACTION_2P(SCSetTimerAction);
 DEF_ACTION_2P(SCLogAction);

Modified: trunk/apps/dsm/doc/dsm_syntax.txt
===================================================================
--- trunk/apps/dsm/doc/dsm_syntax.txt   2009-03-25 12:58:43 UTC (rev 1333)
+++ trunk/apps/dsm/doc/dsm_syntax.txt   2009-03-25 12:59:32 UTC (rev 1334)
@@ -76,6 +76,7 @@
  append($var, value)
  e.g. append($var, "text"); append($var, #key);
       append($var, @select); append($var, $var2);
+ inc($var)
  clear($var)
 
  log(level, text)

_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev

Reply via email to