code: private function createNode($var, Helper $helper)
      {
          if ($var instanceof Node) {
              return $var;
          }
          if ($var instanceof NodeList) {
              return $var;
          }
          if ($var instanceof HelperObject) {
              return $var->getNode();
          }
          if (is_string($var) && strlen($var)) {
              return $helper->createElement($var);
          }
          $nodeName = Values::stringValue($var);
          return strlen($nodeName) ? new Text($nodeName) : new NodeList();
      }
docs: 引数の値をノードに変換します.
  返り値は, 引数によって以下のようになります.
  
  - {@link Node} 型オブジェクトの場合: 引数自身
  - {@link NodeList} 型オブジェクトの場合: 引数自身
  - {@link HelperObject} 型オブジェクトの場合: 引数のオブジェクトがラップしているノード
  - 文字列の場合: 引数の文字列を要素名に持つ新しい {@link Element}
  - null または空文字列の場合: 空の {@link NodeList}
  - 上記に当てはまらない場合: 引数の文字列表現をあらわす {@link Text} ノード
  
  @param  mixed $var     変換対象の値
  @param  Helper $helper ノードの生成に利用する Helper オブジェクト
  @return Component      変換後のノード