static function rule_patch($fragment, $parent, $name, $value, $params) { $count = (int) $params['count']; $pos = (int) $params['rule_pos']; $args = explode(' ', $value); if ($count == 0 || $count == count($args)) { $patcher_key = $count ? "override_{$count}" : NULL; CSSP::disable_rule_patcher($name); $fragment->push_marker(); $fragment->curr_pos($pos); $fragment->set_var('name', $name); $fragment->set_var('0', $value); foreach ($args as $i => $arg) { $fragment->set_var($i + 1, $arg); } $fragment->parse_content($parent); $fragment->restore_marker(); $fragment->pop_marker(); CSSP::enable_rule_patcher($name); } }