Use comptime for fully declarative LV2 and Custom commands #14

Merged
luna merged 69 commits from declarative-commands into master 2020-06-02 21:37:47 +00:00

69 Commits

Author SHA1 Message Date
Luna 6d8614e678 revert cloned runner using parsed cmd list 2020-06-02 17:25:03 -03:00
Luna af0ea574e1 remove default value for Runner.repl field 2020-06-02 17:16:02 -03:00
Luna 1b59705eae cloned runners inherit repl flag from parent 2020-06-02 17:15:50 -03:00
Luna a2ea8fb53e make args live through lifetime of runner
we just assign cloned runners the args of the parent runner and don't
free the parent's, maintaining okay memory usage.
2020-06-02 17:12:34 -03:00
Luna c78ca9dd5b refactor argument fetching for load cmd 2020-06-02 16:59:53 -03:00
Luna dc98c7a22f use better seed 2020-06-02 16:59:36 -03:00
Luna aeb76fe6c0 add more possibilities on temporary file paths 2020-06-02 16:35:42 -03:00
Luna 542ba75b01 make repl cloned runner run the runqs cmd 2020-06-02 16:16:49 -03:00
Luna c7eb70a06f ignore lines without commands 2020-06-02 16:16:43 -03:00
Luna 0240b10a3c close handles while making temporary paths 2020-06-02 16:11:30 -03:00
Luna d6c92c0231 add split and index when printing custom/lv2 cmds 2020-06-02 16:00:54 -03:00
Luna 5235482ab4 print float parameters with decimal notation 2020-06-01 23:58:56 -03:00
Luna ee7ffd1be7 move repl commands to the heap 2020-06-01 23:10:30 -03:00
Luna 0453f37305 add noop, runqs support to runner 2020-06-01 22:47:21 -03:00
Luna 7f008db540 part 2 of printing commands 2020-06-01 22:45:35 -03:00
Luna b06bab9ec5 remove unecessary compileError call 2020-06-01 22:35:29 -03:00
Luna f973d6807d add basics of printing under new command structure 2020-06-01 22:35:16 -03:00
Luna 128f58c502 re-enable repl 2020-06-01 22:35:07 -03:00
Luna e71eba583e make load command own its path memory 2020-06-01 22:34:56 -03:00
Luna 9cb82e3180 remove unecessary code 2020-06-01 22:34:48 -03:00
Luna b00ab8e839 remove the big switch when printing commands 2020-06-01 22:14:12 -03:00
Luna 0b816a512e lang: remove unused declarations 2020-06-01 22:08:01 -03:00
Luna b0525f2386 add proper support on rotateCmd for lang.Command.Rotate 2020-06-01 22:06:15 -03:00
Luna 54919110a5 refactor: remove 'new' prefix from functions 2020-06-01 21:54:10 -03:00
Luna 76b353e593 remove code for old runner commands 2020-06-01 21:51:51 -03:00
Luna b238517b33 update symbols for Dyncomp 2020-06-01 21:41:10 -03:00
Luna 36937a5fde remove ParamMap creation from runner 2020-05-31 22:28:10 -03:00
Luna 72379e63ee add support for more types on lv2 parameter structs 2020-05-31 22:27:56 -03:00
Luna 690ab89cfd allow any typed command to use lv2 param parse logic 2020-05-31 22:27:38 -03:00
Luna 30da41293a fix type defs for noise cmds 2020-05-31 22:27:24 -03:00
Luna 89afa8af10 convert from ParamMap to ducktyped param struct 2020-05-31 22:27:11 -03:00
Luna 9801e303c0 flatten switch values 2020-05-31 21:55:48 -03:00
Luna 2b4f428890 fix typo 2020-05-31 21:55:44 -03:00
Luna 83996b889f make rotate not be a typed command 2020-05-31 21:55:27 -03:00
Luna 10b2c69605 fix typos 2020-05-31 21:55:22 -03:00
Luna 303a40758d make custom plugins always receive ParamMap 2020-05-31 21:55:03 -03:00
Luna 1c1e525b1d add support for plugin command types 2020-05-31 21:47:31 -03:00
Luna 1fac8c7312 fix putting KV on a string 2020-05-31 21:40:31 -03:00
Luna e8808c501b make Embed follow existing custom plugin structure 2020-05-31 21:38:18 -03:00
Luna e669b74ffb add CustomCommand function 2020-05-31 21:34:49 -03:00
Luna ca751e58f7 add draft declarations for custom commands 2020-05-31 21:33:19 -03:00
Luna 82dc99d7d5 remove unecessary switch 2020-05-31 21:26:27 -03:00
Luna d9358ed794 add lv2 parameter validation 2020-05-31 21:25:25 -03:00
Luna 8ce844ceed add validation for split/index args 2020-05-31 21:10:43 -03:00
Luna 7543ecafaa remove unused blocks of code 2020-05-31 18:30:39 -03:00
Luna 325e7b1102 add support for the rest of lv2 commands 2020-05-31 18:29:42 -03:00
Luna 0de2d05fa3 fix detune command definition 2020-05-31 17:54:43 -03:00
Luna 3a7009f9bf convert more commands to new form 2020-05-31 17:53:33 -03:00
Luna c6c31f5a60 rename NewCommand to Command 2020-05-31 17:18:36 -03:00
Luna 8e0ebbe5e0 remove old Command struct 2020-05-31 17:16:57 -03:00
Luna d09603c005 add runner support for LV2Command() spec 2020-05-31 17:11:40 -03:00
Luna 5412934f27 fix fetching of non-lv2 params 2020-05-31 17:11:32 -03:00
Luna b5512c45fb fix fetching of lv2 params 2020-05-31 17:11:26 -03:00
Luna dd1b493da2 fix typo 2020-05-31 17:11:17 -03:00
Luna dca5d7b644 parse lv2 commands' split/index automatically 2020-05-31 17:08:35 -03:00
Luna b21960d372 remove unused code off parser 2020-05-31 16:57:12 -03:00
Luna 94c9695110 add helper to make lv2 command structs 2020-05-31 16:55:50 -03:00
Luna f9c1851734 add support for generic lv2 command running 2020-05-31 15:20:19 -03:00
Luna 9c6387973f convert command list to ptr command list, fixing mem issues 2020-05-30 23:57:42 -03:00
Luna d518369314 add random debug statements 2020-05-30 23:57:34 -03:00
Luna 7d519b73b6 add runner support on command cast 2020-05-30 22:56:45 -03:00
Luna 6497fc1dd8 add split/index decls to Amp, RFlanger 2020-05-30 22:42:41 -03:00
Luna eb18d01cdd copy struct base tag into command base tag 2020-05-30 22:39:52 -03:00
Luna 47a97636cd enable command debug printing 2020-05-30 22:39:45 -03:00
Luna c3b83c3e4b replace f64 to f32 on some commands 2020-05-30 22:29:13 -03:00
Luna f20079b807 disable codepaths not supporting new commands 2020-05-30 22:25:43 -03:00
Luna 154032f9b1 revamp command structure for tags and base types 2020-05-30 22:25:30 -03:00
Luna 27f499dfbb add basics of generic command parsing 2020-05-30 17:48:14 -03:00
Luna d86e9efe43 add main command struct and make fillKeywords mostly-comptime 2020-05-30 16:57:00 -03:00