2008年7月30日水曜日

軽量版、ラベル格納用変数の管理モジュール:ver02

軽量版、ラベル格納用変数の管理モジュール の命令も
衝突しにくいように書き換えました

FILE名:FILE_set_get_label_mini_0_2.hsp
#module set_get_label_mini
*null
stop
#define ctype def_l(%1):\
l_%1_0=*null:l_%1_1=*null:l_%1_2=*null:l_%1_3=*null:l_%1_4=*null:\
l_%1_5=*null:l_%1_6=*null:l_%1_7=*null:l_%1_8=*null:l_%1_9=*null

#deffunc init_at_set_get_label_mini
tmp_l=*null
tmp_r=*null
def_l(0):def_l(1):def_l(2):def_l(3):def_l(4)
def_l(5):def_l(6):def_l(7):def_l(8):def_l(9)
return
#define ctype set_c(%1,%2):\
if c==0{l_%1_0=tmp_l}:\
if c==1{l_%1_1=tmp_l}:\
if c==2{l_%1_2=tmp_l}:\
if c==3{l_%1_3=tmp_l}:\
if c==4{l_%1_4=tmp_l}:\
if c==5{l_%1_5=tmp_l}:\
if c==6{l_%1_6=tmp_l}:\
if c==7{l_%1_7=tmp_l}:\
if c==8{l_%1_8=tmp_l}:\
if c==9{l_%1_9=tmp_l}
#define ctype set_b:\
if b==0{set_c(0)}:\
if b==1{set_c(1)}:\
if b==2{set_c(2)}:\
if b==3{set_c(3)}:\
if b==4{set_c(4)}:\
if b==5{set_c(5)}:\
if b==6{set_c(6)}:\
if b==7{set_c(7)}:\
if b==8{set_c(8)}:\
if b==9{set_c(9)}
#deffunc set_label_at_set_get_label_mini int index
if index<0: dialog "error ネストが浅すぎます",1:stop
if index>99: dialog "error ネストが深すぎます",1:stop
b=index/10
c=index\10
set_b()
return
#define ctype get_c(%1):\
if c==0{tmp_r=l_%1_0}:\
if c==1{tmp_r=l_%1_1}:\
if c==2{tmp_r=l_%1_2}:\
if c==3{tmp_r=l_%1_3}:\
if c==4{tmp_r=l_%1_4}:\
if c==5{tmp_r=l_%1_5}:\
if c==6{tmp_r=l_%1_6}:\
if c==7{tmp_r=l_%1_7}:\
if c==8{tmp_r=l_%1_8}:\
if c==9{tmp_r=l_%1_9}
#define ctype get_b:\
if b==0{get_c(0)}:\
if b==1{get_c(1)}:\
if b==2{get_c(2)}:\
if b==3{get_c(3)}:\
if b==4{get_c(4)}:\
if b==5{get_c(5)}:\
if b==6{get_c(6)}:\
if b==7{get_c(7)}:\
if b==8{get_c(8)}:\
if b==9{get_c(9)}
#deffunc get_label_at_set_get_label_mini int index
if index<0: dialog "error ネストが浅すぎます",1:stop
if index>99: dialog "error ネストが深すぎます",1:stop
b=index/10
c=index\10
get_b()
return
#global

0 件のコメント: