some work
authorxchaos <xchaos@4bb87942-c103-4e5a-b51c-0ebff58f8515>
Wed, 6 Feb 2008 17:11:35 +0000 (17:11 +0000)
committerxchaos <xchaos@4bb87942-c103-4e5a-b51c-0ebff58f8515>
Wed, 6 Feb 2008 17:11:35 +0000 (17:11 +0000)
git-svn-id: https://dev.arachne.cz/repos/cll1h/trunk@60 4bb87942-c103-4e5a-b51c-0ebff58f8515

cll1.h

diff --git a/cll1.h b/cll1.h
index 711b951a3213b901ed44c0bb43f13cf950e4ab26..14abb4e144ef3adf7043896c760be3ec9157345a 100644 (file)
--- a/cll1.h
+++ b/cll1.h
@@ -97,10 +97,12 @@ extern  unsigned RANDOM_SEED;
 #define init_mem(...)  _init_##_ARG1(__VA_ARGS__,)( _ARG2(__VA_ARGS__,,) - 0 )
 #define create_mem(ID,...) _ARG1(__VA_ARGS__,) ID=_GET_MEM(__VA_ARGS__,NULL)
 #define new_mem(ID,...) _ARG1(__VA_ARGS__,) ID=init_mem(__VA_ARGS__)
+#define mem_len(TYPE) sizeof(struct  _##TYPE##_t)
+//#define mem_copy 
 #define list(TYPE) TYPE __next
 #define tree(TYPE) TYPE __next; TYPE __seek
-#define dictionary(TYPE) TYPE __next; TYPE __seek; str __key
-#define array(TYPE) TYPE __next; TYPE __seek; int __key
+#define dict(TYPE) tree(TYPE); str __key
+#define array(TYPE) tree(TYPE); int __key
 #define interface(TYPE) TYPE __interface
 #define this_must_be(TYPE) TYPE this
 /* .----------------------------------------------------------------------.
@@ -162,7 +164,7 @@ extern  unsigned RANDOM_SEED;
 #define skip_next _I++
 #define if_exists(NODE,HEAD,EXPR) for_search(NODE,HEAD,EXPR) break; if(NODE)
 #define if_args if(argc>1)
-#define switch_for_args  for_args switch_str(this_arg)
+#define switch_for_args for_args switch_str(this_arg)
 #define switch_str(STR) _NEW(S,STR)
 #define if_case(VAL) if(eq(argv[_I],VAL))
 #define for_fields(FIELD,STR) for_valid_split(FIELD,STR,*OFS)
This page took 0.121237 seconds and 4 git commands to generate.