and */ public function __construct() { $this->br = new TemplateInspector('
'); $this->p = new TemplateInspector('

'); $this->span = new TemplateInspector(''); } /** * {@inheritdoc} */ public function generateBooleanRules(TemplateInspector $src) { $rules = []; if ($src->isTransparent()) { $rules['isTransparent'] = true; } if (!$src->allowsChild($this->br)) { $rules['preventLineBreaks'] = true; $rules['suspendAutoLineBreaks'] = true; } if (!$src->allowsDescendant($this->br)) { $rules['disableAutoLineBreaks'] = true; $rules['preventLineBreaks'] = true; } if ($src->closesParent($this->p)) { $rules['breakParagraph'] = true; } return $rules; } /** * {@inheritdoc} */ public function generateTargetedRules(TemplateInspector $src, TemplateInspector $trg) { $rules = []; if ($src->allowsChild($trg)) { $rules[] = 'allowChild'; } if ($src->allowsDescendant($trg)) { $rules[] = 'allowDescendant'; } return $rules; } }