@param string $name
@param bool   $href
@param bool   $target

@return $this
346953
public function addCrumb($name, $href = false, $target = false)
    {
        $this->links[] = new BreadCrumbItem($name, $href, $target);

        return $this;
    }
333621
public function withHref($href)
    {
        /** @var EvolvableLinkInterface $that */
        $that = clone($this);
        $that->href = $href;

        $that->templated = ($this->hrefIsTemplated($href));

        return $that;
    }
1201452
public function setInactive($name) {
		$element = $this->getElement($name);
		
		if ($element instanceof Element) {
			$element->setInactive();
		}
		
		return $this;
	}
1185276
public function setAlias($name, $target)
    {
        if (isset($this->services[$name]) && ! $this->allowOverride) {
            throw ContainerModificationsNotAllowedException::fromExistingService($name);
        }
        $this->mapAliasToTarget($name, $target);
    }
131635
protected static function getSettingsItem(&$target, $source, $name = '', $default = false)
	{
		/**
		 * if $target is already set,
		 * return it unchanged
		 */
		if(isset($target)) {
			return $target;
		}

		$useSource = true;

		/**
		 * if $source is false,
		 * or $source[$name] is not set,
		 * set $useSource false
		 */
		if($source === false || !isset($source[$name])) {
			$useSource = false;
		}

		$target = ($useSource ? $source[$name] : $default);
		return $target;
	}
708056
function symlink($target, $link)
    {
        if ($this->exists($link)) {
            $this->unlink($link);
        }

        symlink($target, $link);
    }
616687
function setTarget($target)
    {
        if (!$target instanceof aSapi)
            throw new \InvalidArgumentException(sprintf(
                'Application Target Must Instanceof aSapi; given: (%s).'
                , \Poirot\Std\flatten($target)
            ));

        parent::setTarget($target);
        return $this;
    }
34474
public static function create(string $href): LinkBuilderInterface
    {
        $self = new self();
        $self->href = $href;
        $self->rels = [];
        $self->attributes = [];

        return $self;
    }
120568
public function addLink(string $name, string $link = null, array $arguments = [], int $position = null): Link
	{
		/* @var $item Link */
		$item = $this->addItem(new Link($name, $link, $arguments), $position);
		return $this->getMenu()->attachLink($item);
	}
813309
public function setTarget($target) {
        if (strpos($target, '%s') === false) {
            throw new \InvalidArgumentException('Searchable target url should contain \'%s\'.');
        }
        $this->target = $target;
        return $this;
    }
199521
public function getNewActionEvent(string $name = null, $target = null, $params = null): ActionEvent
    {
        if ($name === null) {
            $name = 'action_event';
        }

        return new DefaultActionEvent($name, $target, $params);
    }
1208830
public function duplicate(string $name = null): LinkInterface
    {
        $link = new self($name ?? $this->name(), $this->href());
        $link->metaInformation()->mergeCollection($this->metaInformation());

        return $link;
    }
289385
protected static function createLink( $source, $target )
	{
		if( file_exists( $target ) === false && @symlink( $source, $target ) === false )
		{
			$source = realpath( __DIR__ . '/' . $source );

			if( symlink( $source, $target ) === false ) {
				throw new \RuntimeException( sprintf( 'Failed to create symlink for "%1$s" to "%2$s"', $source, $target ) );
			}
		}
	}
763611
public function symlink($target, $link)
    {
        if (!file_exists($target)) {
            throw new \InvalidArgumentException('Target not found: ' . $target);
        }
        if ($this->relative) {
            $target = $this->makePathRelative($target, dirname($link));
        }
        $this->fs->symlink($target, $link, $this->copyOnWindows);
    }
997339
public static function buildJsLink($url, $target = null, bool $history = true, bool $replaceTag = false)
    {
        $targetArg  = $target ? ($target[0] === '$' ? "," . $target : ",'#" . $target . "'") : '';
        $targetArg .= $replaceTag ? ',1' : '';
        if (!$history || $targetArg) {
            return "$.ajaxCall('" . $url . "'" . $targetArg . ");";
        } else {
            return "$.router.push('" . $url . "');";
        }
    }
957252
public function setTarget($target) {
            
            if(is_array($target)) {
                foreach ($target as $arg) {
                    $this->arguments[] = $arg;
                }
            }
            if(is_string($target)) {
                $args = explode(',', $target);
                foreach ($args as $arg) {
                   $this->arguments[] = $arg; 
                }
            }
            return $this;
        }
830408
private function setAsLink($name, $link)
    {
        if ($name === 'meta') {
            $this->set($name, $this->create('Meta', $link));

            return;
        }

        // every link must be an URL
        if (! is_string($link)) {
            throw new ValidationException('Every link attribute has to be a string, "' . gettype($link) . '" given.');
        }

        $this->set($name, strval($link));
    }