1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
+
+
+
|
function args = alias_args(args,alias,delim,message,FileID,sys_name)
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.7 2001/06/13 14:50:15 gawthrop
## Operator ^ now ok in args in abg and/or lbl
##
## Revision 1.6 2001/04/23 16:23:30 gawthrop
## Now stips ; from bottlom level argument list - allows aliasing of
## parts of a,b,c (eg a,b by using a,b;c
##
## Revision 1.5 2000/10/12 19:27:20 peterg
## Now writes out the aliased args ...
##
|
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
-
+
-
-
+
+
-
+
+
+
+
+
+
|
arg = deblank(Args(i,:));
arg_ = strrep(arg,",","__");
if struct_contains(alias,arg_)
eval(["new_arg = alias.", arg_,";"]);
mtt_info(["Replacing ", arg, "\t by ",\
new_arg, message],FileID);
mtt_save_alias(arg,sys_name);
## printf("%s --> %s\n",arg,new_arg);
arg = new_arg;
# else
# mtt_info(["NOT replacing ", arg, message],FileID);
## else
## mtt_info(["NOT replacing ", arg, message],FileID);
end
SEPS = ",+-*/()^";
for j = 1:length(SEPS)
if (length(arg)>0)&&(length(findstr(arg,SEPS(j)))>0)
if (length(arg)>1)&&(length(findstr(arg,SEPS(j)))>0)
arg = alias_args(arg,alias,SEPS(j),message,FileID,sys_name);
end
end;
args = sprintf("%s%s%s", args, delim, arg);
end
if (length(args)>1)
if (substr(args,1,1)==delim)
args = substr(args,2); # loose leading delimiter
endif
endif
end
end;
endfunction;
|