WRITE

Evaluates code in a context of a new write transaction

Input stack: code

Output stack: result of code evaluation

This word is the only way one can write to the database, meaning words like ASSOC are only possible in the context of a WRITE. If changes are to be saved, COMMIT has to be used as well. Read-transaction related words (such as RETR) can also be used.

PumpkinDB> ["hi" "there" ASSOC COMMIT] WRITE

Allocation

Will allocate for code appended with an internal transaction end marker word.

Errors

EmptyStack error if stack is less than two items on the stack.

DatabaseError error if there's a problem with underlying storage.

Decoding error error if the code is undecodable.

Tests

evals : [1] WRITE.
invalid_code : [1 WRITE] TRY UNWRAP 0x05 EQUAL?.
empty_stack : [WRITE] TRY UNWRAP 0x04 EQUAL?.

results matching ""

    No results matching ""