| % | |
| % Unbind the operators in an executable array or packedarray. Leaves the | |
| % unbound array or the original object on the stack. | |
| % | |
| /unbind { | |
| 0 index xcheck | |
| 1 index type /arraytype eq | |
| 2 index type /packedarraytype eq or and { | |
| dup length array copy cvx | |
| dup 0 exch { | |
| dup type /operatortype eq { | |
| ( ) cvs cvn cvx | |
| } if | |
| 0 index xcheck | |
| 1 index type /arraytype eq | |
| 2 index type /packedarraytype eq or and { | |
| unbind | |
| } if | |
| 3 copy put pop | |
| 1 add | |
| } forall | |
| pop | |
| } if | |
| } def | |