|
@@ -96,3 +96,42 @@ void EnvVarSpace::setNumber(const std::string &name, int32_t num){
|
|
|
(*tmp)->num = num;
|
|
|
}
|
|
|
|
|
|
+/**
|
|
|
+ * 设置环境变量文本
|
|
|
+ * @param name 变量名
|
|
|
+ * @param str 文本
|
|
|
+ */
|
|
|
+void EnvVarSpace::addString(const std::string &name, const std::string &str){
|
|
|
+ size_t index = time33(name) % ENV_VAR_HASH_SIZE;
|
|
|
+ auto tmp = &var[index];
|
|
|
+ for (NULL; *tmp != nullptr; tmp = &((*tmp)->next)) {
|
|
|
+ if (name == (*tmp)->name) {
|
|
|
+ (*tmp)->str += str;
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ (*tmp) = new EnvVar;
|
|
|
+ (*tmp)->name = name;
|
|
|
+ (*tmp)->str = str;
|
|
|
+}
|
|
|
+
|
|
|
+/**
|
|
|
+ * 设置环境变量数值
|
|
|
+ * @param name 变量名
|
|
|
+ * @param num 数值
|
|
|
+ */
|
|
|
+void EnvVarSpace::addNumber(const std::string &name, int32_t num){
|
|
|
+ size_t index = time33(name) % ENV_VAR_HASH_SIZE;
|
|
|
+ auto tmp = &var[index];
|
|
|
+ for (NULL; *tmp != nullptr; tmp = &((*tmp)->next)) {
|
|
|
+ if (name == (*tmp)->name) {
|
|
|
+ (*tmp)->num += num;
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ (*tmp) = new EnvVar;
|
|
|
+ (*tmp)->name = name;
|
|
|
+ (*tmp)->num = num;
|
|
|
+}
|