aboutsummaryrefslogtreecommitdiff
path: root/ide/ide_slave.ml
diff options
context:
space:
mode:
authorEnrico Tassi2015-10-06 14:11:19 +0200
committerEnrico Tassi2015-10-08 09:51:13 +0200
commitce83c2b9fd1685e46049ee7f47c8716dcf66dbd1 (patch)
treef37a9f9b4aadcd6b07fce72885f879d457ab78dd /ide/ide_slave.ml
parent27d4a636cb7f1fbdbced1980808a9b947405eeb5 (diff)
Goptions: new value type: optional string
These options can be set to a string value, but also unset. Internal data is of type string option.
Diffstat (limited to 'ide/ide_slave.ml')
-rw-r--r--ide/ide_slave.ml4
1 files changed, 4 insertions, 0 deletions
diff --git a/ide/ide_slave.ml b/ide/ide_slave.ml
index 94f9c9a361..041f2f83b8 100644
--- a/ide/ide_slave.ml
+++ b/ide/ide_slave.ml
@@ -291,11 +291,13 @@ let export_option_value = function
| Goptions.BoolValue b -> Interface.BoolValue b
| Goptions.IntValue x -> Interface.IntValue x
| Goptions.StringValue s -> Interface.StringValue s
+ | Goptions.StringOptValue s -> Interface.StringOptValue s
let import_option_value = function
| Interface.BoolValue b -> Goptions.BoolValue b
| Interface.IntValue x -> Goptions.IntValue x
| Interface.StringValue s -> Goptions.StringValue s
+ | Interface.StringOptValue s -> Goptions.StringOptValue s
let export_option_state s = {
Interface.opt_sync = s.Goptions.opt_sync;
@@ -314,6 +316,8 @@ let set_options options =
| BoolValue b -> Goptions.set_bool_option_value name b
| IntValue i -> Goptions.set_int_option_value name i
| StringValue s -> Goptions.set_string_option_value name s
+ | StringOptValue (Some s) -> Goptions.set_string_option_value name s
+ | StringOptValue None -> Goptions.unset_option_value_gen None name
in
List.iter iter options