MCPcopy Create free account
hub / github.com/boostorg/build / call_rule

Function call_rule

v2/engine/compile.c:172–200  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

170 */
171
172LIST * call_rule( OBJECT * rulename, FRAME * caller_frame, ... )
173{
174 va_list va;
175 LIST * result;
176
177 FRAME inner[ 1 ];
178 frame_init( inner );
179 inner->prev = caller_frame;
180 inner->prev_user = caller_frame->module->user_module
181 ? caller_frame
182 : caller_frame->prev_user;
183 inner->module = caller_frame->module;
184
185 va_start( va, caller_frame );
186 for ( ; ; )
187 {
188 LIST * const l = va_arg( va, LIST * );
189 if ( !l )
190 break;
191 lol_add( inner->args, l );
192 }
193 va_end( va );
194
195 result = evaluate_rule( bindrule( rulename, inner->module ), rulename, inner );
196
197 frame_free( inner );
198
199 return result;
200}
201
202
203/*

Callers 1

property_set_createFunction · 0.85

Calls 5

frame_initFunction · 0.85
lol_addFunction · 0.85
evaluate_ruleFunction · 0.85
bindruleFunction · 0.85
frame_freeFunction · 0.85

Tested by

no test coverage detected