Ruby 1.9.3p327(2012-11-10revision37606)
include/ruby/vm.h
Go to the documentation of this file.
00001 /**********************************************************************
00002 
00003   ruby/vm.h -
00004 
00005   $Author: shyouhei $
00006   created at: Sat May 31 15:17:36 2008
00007 
00008   Copyright (C) 2008 Yukihiro Matsumoto
00009 
00010 **********************************************************************/
00011 
00012 #ifndef RUBY_VM_H
00013 #define RUBY_VM_H 1
00014 
00015 #if defined(__cplusplus)
00016 extern "C" {
00017 #if 0
00018 } /* satisfy cc-mode */
00019 #endif
00020 #endif
00021 
00022 #if defined __GNUC__ && __GNUC__ >= 4
00023 #pragma GCC visibility push(default)
00024 #endif
00025 
00026 /* Place holder.
00027  *
00028  * We will prepare VM creation/control APIs on 1.9.2 or later.
00029  * If you have an interest about it, please see mvm branch.
00030  * http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/branches/mvm/
00031  */
00032 
00033 /* VM type declaration */
00034 typedef struct rb_vm_struct ruby_vm_t;
00035 
00036 /* core API */
00037 int ruby_vm_destruct(ruby_vm_t *vm);
00038 
00055 void ruby_vm_at_exit(void(*func)(ruby_vm_t *));
00056 
00057 #if defined __GNUC__ && __GNUC__ >= 4
00058 #pragma GCC visibility pop
00059 #endif
00060 
00061 #if defined(__cplusplus)
00062 #if 0
00063 { /* satisfy cc-mode */
00064 #endif
00065 }  /* extern "C" { */
00066 #endif
00067 
00068 #endif /* RUBY_VM_H */
00069