Our EvalState has an associated Store, and it's not clear what's going on there. IIUC, the underlying C code has a similar structure. Maybe in theory the EvalState could have multiple stores associated with it, but at the moment that's not how it works in practice. Also, in theory we could have one Store associated with multiple EvalStates, but in practice it doesn't actually matter, because Store is already a smart pointer to an underlying c struct, and can be cloned.
Places that should maybe have documentation:
The Store field of the EvalState struct.
The store() method on EvalState, answering the question "why is this a function and people not just directly access the field?" answer: "the field is an implementation detail, you could get the same information by calling a function from the c api"
Our
EvalState
has an associatedStore
, and it's not clear what's going on there. IIUC, the underlying C code has a similar structure. Maybe in theory theEvalState
could have multiple stores associated with it, but at the moment that's not how it works in practice. Also, in theory we could have one Store associated with multipleEvalState
s, but in practice it doesn't actually matter, becauseStore
is already a smart pointer to an underlying c struct, and can be cloned.Places that should maybe have documentation:
Store
field of theEvalState
struct.store()
method onEvalState
, answering the question "why is this a function and people not just directly access the field?" answer: "the field is an implementation detail, you could get the same information by calling a function from the c api"