Определить переключатель для ключ = значение

В nim вы можете определить символ через -d:value и проверить, был ли он определен с помощью defined(value). Однако возможно ли определить ключ и получить его значение? Я ищу что-то в духе --colors:on, но определяемое пользователем.


person Arrrrrrr    schedule 06.12.2015    source источник


Ответы (1)


Я также искал это и ничего не нашел для моих nim-small-coreutils . В итоге я использовал переменные среды в качестве хака и прочитал их непереносимым образом:

const colors = staticExec "echo \"$colors\""

when colors == "on":
  echo "It's on!"
else:
  echo "I guess it's off? The value is: ", colors

Это принимает переменную среды во время компиляции, поэтому вы можете использовать ее следующим образом:

colors=on nim c example

или альтернативно:

nim c --putEnv:colors=on c example
person def-    schedule 06.12.2015
comment
Ммм, интересный лайфхак. - person Arrrrrrr; 07.12.2015