view runtime/builtin.h @ 139:a68e6828d896

Global stores and transactions are working. Definately leaks memory on retries. Probably a fair number of bugs to work out. However, a basic test program works.
author Mike Pavone <pavone@retrodev.com>
date Fri, 19 Nov 2010 04:04:14 -0500
parents 5a08705f7610
children c14698c512f1
line wrap: on
line source

#ifndef _BUILTIN_H_
#define _BUILTIN_H_
#include "plat_types.h"

#include "object.h"
#include "func.h"

//Builtin Types
enum {
	TYPE_UINT8 = 1,
	TYPE_UINT16,
	TYPE_UINT32,
	TYPE_UINT64,
	TYPE_INT8,
	TYPE_INT16,
	TYPE_INT32,
	TYPE_INT64,
	TYPE_BOOLEAN,
	TYPE_FLOAT32,
	TYPE_FLOAT64,
	TYPE_BLUEPRINT,
	TYPE_ARRAY,
	TYPE_BOXEDARRAY,
	TYPE_WORKER,
	TYPE_METHODMISSINGEXCEPTION,
	TYPE_FIELDMISSINGEXCEPTION,
	TYPE_WRONGTYPEEXCEPTION,
	TYPE_MUTABLEGLOBAL,
	TYPE_FIRST_USER //Insert new builtin types before this one
};

//Builtin Methods
enum {
	METHOD_ADD=1,
	METHOD_SUB,
	METHOD_DIV,
	METHOD_MUL,
	METHOD_LSHIFT,
	METHOD_RSHIFT,
	METHOD_EQUALS,
	METHOD_GREATER,
	METHOD_LESS,
	METHOD_IF,
	METHOD_SETFIELDMISSING,
	METHOD_GETFIELDMISSING,
	METHOD_MISSING,//Insert new builtin methods before this one
	METHOD_FIRST_USER 
};

void register_builtin_types();
void register_builtin_type(uint32_t type);

#endif //_BUILTIN_H_