#ifndef GOOSE_BUILTINS_TYPES_RUNTIME_H
#define GOOSE_BUILTINS_TYPES_RUNTIME_H
#include "basic.h"
#include "pointer.h"
#include "array.h"
#include "record.h"
namespace goose::builtins
{
extern void SetupRuntimeBasicTypes( Env& e );
extern void SetupRuntimeTypesChecking( Env& e );
static inline void SetupRuntimeTypes( Env& e )
{
SetupRuntimeBasicTypes( e );
SetupRuntimePointerType( e );
SetupRuntimeArrayType( e );
SetupRuntimeRecordType( e );
SetupRuntimeTypesChecking( e );
}
extern bool IsRuntimeType( const Value& t );
extern llvm::Type* GetLLVMType( const Value& t );
}
#endif