@param string $name

@return InputElement

@since 2.0
323983
public function getElementInstance($name)
	{
		$className = $this->baseElementNamespace . ucfirst($name);

		if (array_key_exists($name, $this->customElements))
		{
			$className = $this->customElements[$name];
		}

		return new $className;
	}
416911
public function addInputDate(string $name) : Element\Input\Date
    {
        $input = new Element\Input\Date($this, $name);
        $this->addComponent($name, $input);

        return $input;
    }
606727
public function setActive($name) {
		$element = $this->getElement($name);
		
		if ($element instanceof Element) {
			$element->setActive();
		}
		
		return $this;
	}
689747
public function addInputRange(string $name) : Element\Input\Range
    {
        $input = new Element\Input\Range($this, $name);
        $this->addComponent($name, $input);

        return $input;
    }
503184
public function allowsElement($name)
    {
        if (!empty($this->currentNesting)) {
            $parent_token = array_pop($this->currentNesting);
            $this->currentNesting[] = $parent_token;
            $parent = $this->htmlDefinition->info[$parent_token->name];
        } else {
            $parent = $this->htmlDefinition->info_parent_def;
        }
        if (!isset($parent->child->elements[$name]) || isset($parent->excludes[$name])) {
            return false;
        }
        // check for exclusion
        for ($i = count($this->currentNesting) - 2; $i >= 0; $i--) {
            $node = $this->currentNesting[$i];
            $def  = $this->htmlDefinition->info[$node->name];
            if (isset($def->excludes[$name])) {
                return false;
            }
        }
        return true;
    }
388310
static function laraform($title, $name=null) {
        $el = new ElementButtonTwbs($name, ['value' => $title]);
        $el->addClass('btn');
        return $el;
    }
523734
protected function element(string $name): \DOMElement
    {
        if (\strpos($name, ':') !== false)
        {
            $keys = explode(':', $name);

            return $this->document()->createElementNS(
                $this->namespaces[$this->options()->getNamespace() . ':' . \current($keys)],
                $name
            );
        }

        return $this->createElement($name);
    }
1252224
public function get($name)
    {
        $input = null;
        if ($this->has($name)) {
            $input = $this->_inputs[$name];
        }
        return $input;
    }
1090158
public function findTypeElement($name)
    {
        $type = null;

        $elements = $this->xpath('//s:simpleType[@name=%s]|//s:complexType[@name=%s]', $name, $name);
        if ($elements->length > 0) {
            $type = $elements->item(0);
        }

        if (empty($type)) {
            foreach ($this->referereces as $import) {
                $type = $import->findTypeElement($name);
                if (!empty($type)) {
                    break;
                }
            }
        }

        return $type;
    }
857438
public function addInputHidden(string $name) : Element\Input\Hidden
    {
        $input = new Element\Input\Hidden($this, $name);
        $this->addComponent($name, $input);

        return $input;
    }
773474
protected function request( $name ) {
		if ( ! $this->consider_request || ! $this->request ) {
			return null;
		}

		return $this->request->input( $this->transform_key( $name ) );
	}
226908
public function findElementByName( $name ) {
		$elt = $this->tail;
		while ( $elt && !( $elt instanceof Marker ) ) {
			if ( $elt->htmlName === $name ) {
				return $elt;
			}
			$elt = $elt->prevAFE;
		}
		return null;
	}
602563
public function getChecker(string $name): Autowire
    {
        if (!$this->hasChecker($name)) {
            throw new ValidationException("Undefined checker `{$name}``.");
        }

        $instance = $this->wire('checkers', $name);
        if (!empty($instance)) {
            return $instance;
        }

        throw new ValidationException("Invalid checker definition for `{$name}`.");
    }
891513
public function element(string $name): ElementInterface
    {
        if (! isset($this->elements[$name])) {
            throw new ElementNotFoundException(
                sprintf('The element with name <code>%s</code> does not exists', $name)
            );
        }

        return $this->elements[$name];
    }
77149
protected function findByNameOrId($name, $element = '*')
    {
        $name = str_replace('#', '', $name);

        try {
            return $this->session->element('css selector', "#{$name}, *[name={$name}]");
        } catch (NoSuchElement $e) {
            throw new InvalidArgumentException(
                "Couldn't find an element, '{$element}', with a name or class attribute of '{$name}'."
            );
        }
    }
718037
public function getValue($name)
    {
        $value = null;
        if ($this->has($name)) {
            $value = call_user_func_array(
                [$this->_inputs[$name], 'getValue'],
                [$name]
            );
        }
        return $value;
    }
1205241
public function bag(string $name): InputBag
    {
        // ensure proper request association
        $this->request();

        if (isset($this->bags[$name])) {
            return $this->bags[$name];
        }

        if (!isset($this->bagAssociations[$name])) {
            throw new InputException("Undefined input bag '{$name}'");
        }

        $class = $this->bagAssociations[$name]['class'];
        $data = call_user_func([$this->request(), $this->bagAssociations[$name]['source']]);

        if (!is_array($data)) {
            $data = (array)$data;
        }

        return $this->bags[$name] = new $class($data, $this->prefix);
    }