Beispiel #1
0
 /**
  * Выполняет преобразования данного BEMJSON-элемента остальными шаблонами.
  * Может понадобиться, например, чтобы добавить элемент в самый конец содержимого,
  * если в базовых шаблонах в конец содержимого добавляются другие элементы.
  * Пример:
  * ```javascript
  * bh.match('header', function(ctx) {
  *    ctx.content([
  *        ctx.content(),
  *        { elem: 'under' }
  *    ], true);
  * });
  * bh.match('header_float_yes', function(ctx) {
  *    ctx.applyBase();
  *    ctx.content([
  *        ctx.content(),
  *        { elem: 'clear' }
  *    ], true);
  * });
  * ```
  *
  * @return Context
  */
 public function applyBase()
 {
     $node = $this->node;
     $json = $node->json;
     $block = $json->block;
     $blockMods = $json->mods;
     /** @var \Closure $fm */
     $subRes = $this->bh->matcherImpl($this, $json);
     if ($subRes !== null) {
         $this->ctx = $node->arr[$node->index] = $node->json = JsonCollection::normalize($subRes);
         $node->block = $block;
         // need check
         $node->mods = $blockMods;
     }
     return $this;
 }
Beispiel #2
0
        $ae = AC::AD;
        break;
    case 'AE':
        $af = AF::AG;
        $ag = (double) $ah['AH'];
        if (AI($ai) == $aj) {
            if ($ak = (int) $al) {
                $am = (int) $an;
            } else {
                $ao = (double) $ap;
            }
        }
        break;
    case 'AJ':
        $aq = AK::AL;
        $ar = new AM($as['AN'], $at);
        $au->AO($av);
        list($aw, $ax, $ay, $az, $ba, $bb) = AP('AQ', $bc->AR('AT'));
        $bd = AU::AV($be, $bf, $bg, $bh, $bi, $bj);
        if ($bk != AW($bl)) {
            $bm = AX::AY . 'AZ' . BA::BB;
        } else {
            $bn = BC::BD;
        }
        break;
    case 'BE':
        $bo = BF::BG;
        $bp = BH::BI(BJ('BK' . BL('BM', BN($bq['BO'], 'BP'))));
        $br = BQ::BR;
        break;
}