aboutsummaryrefslogtreecommitdiff
path: root/dialoguer
diff options
context:
space:
mode:
authorTinWoodman92 <chrhodgden@gmail.com>2023-07-06 18:47:38 -0500
committerTinWoodman92 <chrhodgden@gmail.com>2023-07-06 18:47:38 -0500
commita1722faa941e13a24a32ec3dba0524b163e087d7 (patch)
tree186f015e221c9b585dfca79a48390906bb9b0908 /dialoguer
parentc7e7609ca56c81c6517b8d685cf2ce41dd9aae3a (diff)
added assign variable method.
Diffstat (limited to 'dialoguer')
-rw-r--r--dialoguer/__init__.py8
-rw-r--r--dialoguer/context_script.r11
2 files changed, 19 insertions, 0 deletions
diff --git a/dialoguer/__init__.py b/dialoguer/__init__.py
index 1b9cb8d..21c51d2 100644
--- a/dialoguer/__init__.py
+++ b/dialoguer/__init__.py
@@ -99,6 +99,14 @@ class Dialogue:
val = self.recv(True)
return val
+ def assign_variable(self, var_name, var_val):
+ self.send(3)
+ recv_chk = self.recv(set_data_type=bool)
+ self.send(var_name, False)
+ recv_chk = self.recv(set_data_type=bool)
+ self.send(var_val, True)
+ recv_chk = self.recv(set_data_type=bool)
+
def evaluate_expression(self, method_name, *args, **kwargs):
self.send(2)
recv_chk = self.recv(set_data_type=bool)
diff --git a/dialoguer/context_script.r b/dialoguer/context_script.r
index 33aacaa..32a0149 100644
--- a/dialoguer/context_script.r
+++ b/dialoguer/context_script.r
@@ -86,6 +86,14 @@ import_variable <- function() {
send(con, var_val, TRUE)
}
+assign_variable <- function() {
+ var_name <- recv(con, FALSE, "character")
+ send(con, TRUE)
+ var_val <- recv(con, TRUE)
+ send(con, TRUE)
+ assign(var_name, var_val, envir = globalenv())
+}
+
evaluate_expression <- function() {
arg_count <- recv(con, FALSE, "integer")
send(con, TRUE)
@@ -133,6 +141,9 @@ while (cmd_int != 0) {
} else if (cmd_int == 2) {
send(con, TRUE)
evaluate_expression()
+ } else if (cmd_int == 3) {
+ send(con, TRUE)
+ assign_variable()
}
}