#include <VirtualMachineState.h>
template<typename _t_input, typename _t_output, typename... VM_TYPES>
class VirtualMachineState< _t_input, _t_output, VM_TYPES >
- Author
- piantado
- Date
- 02/02/20
◆ FT
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ input_t
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ output_t
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ this_t
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ VMSStack
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
◆ VirtualMachineState()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ _exactly_one()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T , typename... args>
There is one element in stack T and the rest are empty. Used to check in returning the output.
- Returns
◆ exactly_one()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
◆ get_output()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
Return the output and do some checks that the stacks are as they should be if you're reading the output.
- Returns
◆ getpop()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
Retrieves and pops the element of type T from the stack.
- Returns
◆ getpop_nth()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<size_t n, typename... args>
Getpops the n'th element of args (useful for writing primitives)
- Returns
◆ gettop()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
Retrieves the top of the stack as a copy and does not remove.
- Returns
◆ mem()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
◆ memstack()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
◆ operator()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
These must be sortable by lp so that we can enumerate them from low to high probability in a VirtualMachinePool NOTE: VirtualMachineStates shouldn't be put in a set because they might evaluate to equal!
- Parameters
-
- Returns
◆ push() [1/2]
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
Push things onto the appropriate stack
- Parameters
-
◆ push() [2/2]
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
◆ push_x()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ run()
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ stack() [1/2]
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
Returns a reference to the stack (of a given type)
- Returns
◆ stack() [2/2]
template<typename _t_input , typename _t_output , typename... VM_TYPES>
template<typename T >
Const reference to top of stack.
- Returns
◆ err
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ lp
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ pool
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ program
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ recursion_depth
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ runtime_counter
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ status
template<typename _t_input , typename _t_output , typename... VM_TYPES>
◆ xstack
template<typename _t_input , typename _t_output , typename... VM_TYPES>
The documentation for this class was generated from the following file: