… | |
… | |
1186 | for (int i = 0; i < size; ++i) |
1186 | for (int i = 0; i < size; ++i) |
1187 | CALL_ARG ((IV)addr [i]); |
1187 | CALL_ARG ((IV)addr [i]); |
1188 | CALL_CALL ("cf::_log_backtrace", G_VOID); |
1188 | CALL_CALL ("cf::_log_backtrace", G_VOID); |
1189 | CALL_END; |
1189 | CALL_END; |
1190 | #endif |
1190 | #endif |
|
|
1191 | } |
|
|
1192 | |
|
|
1193 | bool is_match_expr (const char *expr) |
|
|
1194 | { |
|
|
1195 | return !strncmp (expr, "match ", sizeof ("match ") - 1); |
|
|
1196 | } |
|
|
1197 | |
|
|
1198 | bool match (const char *expr, object *ob, object *self, object *source, object *originator) |
|
|
1199 | { |
|
|
1200 | bool matched; |
|
|
1201 | |
|
|
1202 | CALL_BEGIN (5); |
|
|
1203 | CALL_ARG (expr); |
|
|
1204 | CALL_ARG (ob); |
|
|
1205 | CALL_ARG (self); |
|
|
1206 | CALL_ARG (source); |
|
|
1207 | CALL_ARG (originator); |
|
|
1208 | CALL_CALL ("cf::match::match", G_SCALAR); |
|
|
1209 | |
|
|
1210 | matched = count && SvTRUE (POPs); |
|
|
1211 | |
|
|
1212 | CALL_END; |
|
|
1213 | |
|
|
1214 | return matched; |
1191 | } |
1215 | } |
1192 | |
1216 | |
1193 | ///////////////////////////////////////////////////////////////////////////// |
1217 | ///////////////////////////////////////////////////////////////////////////// |
1194 | |
1218 | |
1195 | struct EVAPI *evapi::GEVAPI; |
1219 | struct EVAPI *evapi::GEVAPI; |