- Timestamp:
- Jul 3, 2020, 7:19:17 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/asp3_dcre/tecsgen/tecs/mruby/tecs_mruby.h
r321 r429 1 /* 2 * Copyright (C) 2008-2019 by TOPPERS Project 3 * 4 * 上記著作権者は,以下の(1)~(4)の条件を満たす場合に限り,本ソフトウェ 5 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改 6 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する. 7 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作 8 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー 9 * スコード中に含まれていること. 10 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使 11 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用 12 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記 13 * の無保証規定を掲載すること. 14 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使 15 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ 16 * と. 17 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著 18 * 作権表示,この利用条件および下記の無保証規定を掲載すること. 19 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに 20 * 報告すること. 21 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損 22 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること. 23 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理 24 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを 25 * 免責すること. 26 * 27 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お 28 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的 29 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ 30 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ 31 * の責任を負わない. 32 * 33 * @(#) $Id$ 34 */ 35 1 36 #ifndef tecs_mruby_h__ 2 37 #define tecs_mruby_h__ … … 9 44 #include "mruby/data.h" 10 45 #include "mruby/string.h" 46 #include "mruby/irep.h" 47 #include "mruby/dump.h" 48 #include "mruby/proc.h" 11 49 12 50 #include "TECSPointer.h" 13 51 #include "TECSStruct.h" 14 52 15 #if ! defined( MRUBY_RELEASE_MAJOR ) || MRUBY_RELEASE_MAJOR == 1 && MRUBY_RELEASE_MINOR < 216 #ifndef MRB_ARGS_REQ17 #define MRB_ARGS_REQ(n) ARGS_REQ(n)18 #define MRB_ARGS_OPT(n) ARGS_OPT(n)19 #define MRB_ARGS_ARG(n1,n2) ARGS_ARG(n1,n2)20 #define MRB_ARGS_REST() ARGS_REST()21 #define MRB_ARGS_POST(n) ARGS_POST(n)22 #define MRB_ARGS_KEY(n1,n2) ARGS_KEY(n1,n2)23 #define MRB_ARGS_BLOCK() ARGS_BLOCK()24 #define MRB_ARGS_ANY() ARGS_ANY()25 #define MRB_ARGS_NONE() ARGS_NONE()26 #endif /* MRB_ARGS_REQ */27 #endif28 53 29 #if ! defined( MRUBY_RELEASE_MAJOR ) 30 #define mrb_float_value( mrb, val ) mrb_float_value( val ) 31 #endif 32 33 #else 54 #else /* TECSGEN */ 34 55 35 56 /* 36 * fake tecsgen because tecsgen cannot accept actual mruby.h in case of below.57 * fake definition because tecsgen cannot accept actual mruby.h in case of below. 37 58 * types: long long, long long int 38 59 * special keyword __attribute__(x), __extension__ 39 60 */ 40 61 typedef int mrb_state; 41 struct RClass {int dummy;}; 62 typedef int mrb_irep; 63 typedef int mrb_context; 64 struct RClass {uint32_t gcnext;}; // actual definition: struct RBasic *gcnext 65 struct RProc {uint32_t gcnext;}; // actual definition: struct RBasic *gcnext 42 66 43 67 typedef int CELLCB; 68 69 #define GET_SET_BOOL( Type, type ) 70 #define GET_SET_CHAR( Type, type ) 71 #define GET_SET_INT( Type, type ) 72 #define GET_SET_FLOAT( Type, type ) 73 #define POINTER_CLASS( Type, type ) 74 #define CHECK_AND_GET_POINTER( Type, type ) 44 75 45 76 #endif /* TECSGEN */
Note:
See TracChangeset
for help on using the changeset viewer.