# HG changeset patch # User Nobuyasu Oshiro # Date 1338655110 -32400 # Node ID 746ef742e5865a127b406a6b26c7684b3885a662 # Parent 5e36456a291c1cd2e371943297a60d9dbfd3d068 commit diff -r 5e36456a291c -r 746ef742e586 konoha.test/#test_glue.h# --- a/konoha.test/#test_glue.h# Sun Jun 03 01:38:13 2012 +0900 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,88 +0,0 @@ -/**************************************************************************** - * Copyright (c) 2012, the Konoha project authors. All rights reserved. - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; - * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR - * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF - * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - ***************************************************************************/ - -#include -#include -#include - -#define Int_to(T, a) ((T)a.ivalue) -#define Float_to(T, a) ((T)a.fvalue) - -static KMETHOD Test_print(CTX, ksfp_t *sfp _RIX) -{ - if (Int_to(int, sfp[1]) < 1) { - RETURNi_(printf("test: sfp[1] < 1\n")); - } else { - RETURNi_(printf("test: sfp[1] > 1 \n")); - } -} - - -// -------------------------------------------------------------------------- - -#define _Public kMethod_Public -#define _Const kMethod_Const -#define _Coercion kMethod_Coercion -#define _F(F) (intptr_t)(F) -#define _KVf(T) "TEST_" #T, TY_Float, M_##T -#define TY_Test (cTest->cid) - -static kbool_t test_initPackage(CTX, kKonohaSpace *ks, int argc, const char**args, kline_t pline) -{ - static KDEFINE_CLASS TestDef = { - .structname = "Test"/*structname*/, - .cid = CLASS_newid/*cid*/, - }; - kclass_t *cTest = Konoha_addClassDef(ks->packid, ks->packdom, NULL, &TestDef, pline); - int FN_x = FN_("x"); - intptr_t MethodData[] = { - // ’´Ø’¿ô’¥Ý’¥¤’¥ó’¥¿, ’ÊÖ’¤ê’ÃÍ,this ’¤Î’·¿,’´Ø’¿ô’̾,’°ú’¿ô’¤Î’¿ô,’°ú’¿ô’¤Î’·¿,’°ú’¿ô’¤Î’̾’Á°... - // _P;ublicl_Const ’¤Ï Java ’¤Î annotation - _Public|_Const, _F(Test_print), TY_Int, TY_Test, MN_("print"), 1, TY_Int, FN_x, - // DEND ’¤Ç’¤ª’¤ï’¤ë - DEND, - }; - // konoha ’¤Ø’¤Î’ÅÐ’Ï¿ - kKonohaSpace_loadMethodData(ks, MethodData); - - return true; -} - -static kbool_t test_setupPackage(CTX, kKonohaSpace *ks, kline_t pline) -{ - // ’º£’¤Ï’»È’¤Ã’¤Æ’¤Ê’¤¤’¤¬’¡¢’´ð’ËÜtrue - return true; -} - -static kbool_t test_initKonohaSpace(CTX, kKonohaSpace *ks, kline_t pline) -{ - // package ’¤Î’°Í’¸ - return true; -} - -static kbool_t test_setupKonohaSpace(CTX, kKonohaSpace *ks, kline_t pline) -{ - // ’º£’¤Ï’»È’¤Ã’¤Æ’¤Ê’¤¤’¤¬,’´ð’ËÜtrue - return true; -}