omc-context.lsp¶
Manage function execution context. Automates the assignment and resetting of system variables, error catching and grouping calls to command for undoing between the enter and exit functions.
To use it, follow these steps:
- Define variables *error* and context as local to the function;
- Call
omc-context-enterwith an association list of system variables and their values desired during the execution of the function:(omc-context-enter '((var1 . value1) (var2 . value2) ... ))). Use(omc-context-enter nil)if you don’t need any. - Continue the function code normally.
- Call
omc-context-exitto reset the system variables to their previous values and ends the undo grouping. If it is the last call in a function, it is not necessary to callprincto exit quietly.
If you need to process errors somehow, define the *error* function
after omc-context-enter, but keep in mind the procedures in
omc-context-error to avoid inconsistencies with the context
management functions.
Functions¶
(omc-context-enter options)
Enter function execution context: set system variables, start undo group and define error catcher.
(omc-context-exit)
Exit function execution context: reset variables to previous values and end undo group.
(omc-context-error msg)
Catch errors and exit function execution context: reset system variables to previous values and end undo group.
Global variables¶
*error* assigned in
- omc-context-enter
*omc-context-undo-stack-size* assigned in
- Top level
- omc-context-enter
- omc-context-error
- omc-context-exit
context assigned in
- omc-context-enter
Functions called on load¶
- princ