本来、以前の記事といっしょに挙げようと思っていて忘れていた話。
9.4M3でreadonlyが追加されたことを受けて、%putの指定で、
読み取り専用のマクロ変数を出力する_readonly_と、逆に
上書き可能なマクロ変数を出力する_writable_が追加されている。
_global_ _local_ _user_と_all_ _automatic_も復習しておくと
%global A;
%global B;
%global /readonly C=1 ;
%macro m1;
%local A;
%local D;
%local /readonly E=1 ;
%put *===_global_===*;
%put _global_;
%put *===_local_===*;
%put _local_;
%put *===_user_===*;
%put _user_;
%put *★===_readonly_===*;
%put _readonly_;
%put *★===_writable_===*;
%put _writable_;
/*===_all_はたくさん出るから割愛===*/
/*%put _all_;*/
/*===_automatic_はたくさん出るから割愛===*/
/*%put _automatic_;*/
%mend;
%m1
結果は
*===_global_===*
GLOBAL A
GLOBAL B
GLOBAL C 1
*===_local_===*
M1 A
M1 D
M1 E 1
*===_user_===*
M1 A
M1 D
M1 E 1
GLOBAL A
GLOBAL B
GLOBAL C 1
*★===_readonly_===*
M1 E 1
GLOBAL C 1
*★===_writable_===*
M1 A
M1 D
GLOBAL A
GLOBAL B
みたいな感じ
0 件のコメント:
コメントを投稿