summary refs log tree commit diff
path: root/include/instruction.h
blob: 63f28b2f82eed500b10467aaa271b33f6ce2c658 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef __CCL_INSTRUCTION_H__
#define __CCL_INSTRUCTION_H__

#include "3cl.h"

/**< Type for every instruction in 3cl */
typedef struct CCLFrame *(*CCLInstruction)(struct CCL *ccl, struct CCLFrame *frame);

/**
 * Execute next instruction
 * @param ccl CCL instance
 * @param frame Current frame
 * @return Updated frame
 */
struct CCLFrame *ccl_instruction(struct CCL *ccl, struct CCLFrame *frame);

#endif /* __CCL_INSTRUCTION_H__ */