124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
# File 'lib/adlint/cpp/macro.rb', line 124
def expand(toks, macro_tbl, repl_ctxt)
super
args, * = parse_arguments(toks, 1)
args = [] if @parameter_names.empty?
args_hash =
@parameter_names.zip(args).each_with_object({}) { |(param, arg), hash|
hash[param] = arg
}
rslt_toks = expand_replacement_list(args_hash, toks.first.location,
macro_tbl, repl_ctxt)
macro_tbl.notify_function_like_macro_replacement(self, toks, args,
rslt_toks)
rslt_toks
end
|