/** * @param Node|array $data * @return static */ public function set($data) { if (!$this->fullNode($data)) { $items = []; foreach ($data as $n => $i) { if ($this->fullNode($i)) { $items[] = Operator::bin(Identifier::node($n), '=', $i); } else { $items[] = Operator::bin(Identifier::node($n), '=', Value::node($i)); } } $data = Enum::expr($items); } $this->data = $data; return $this; }