Add a suffix to each key.

@param mixed $suffix

@return static
<p>(Immutable) Return an Arrayy object, with the prepended keys.</p>
330774
public function prependToEachKey($suffix): self
    {
        // init
        $result = [];

        foreach ($this->getGenerator() as $key => $item) {
            if ($item instanceof self) {
                $result[$key] = $item->prependToEachKey($suffix);
            } elseif (\is_array($item)) {
                $result[$key] = self::create(
                    $item,
                    $this->iteratorClass,
                    false
                )->prependToEachKey($suffix)
                    ->toArray();
            } else {
                $result[$key . $suffix] = $item;
            }
        }

        return self::create(
            $result,
            $this->iteratorClass,
            false
        );
    }
257104
public function getId($suffix = null)
    {
        $id = class_basename(get_called_class()) . '-' . $this->action;
        if ($suffix !== null) {
            $id .= '-' . $suffix;
        }

        return $id;
    }
347606
public static function addSuffix(string $value, string $suffix): string
    {
        return self::removeSuffix($value, $suffix).$suffix;
    }
68251
protected function className($suffix = '') {
		$exp = explode('\\', $this->getClass());

		return (!empty($suffix) &&
			substr($exp[count($exp) - 1], (strlen($exp[count($exp) - 1]) - strlen($suffix))) === $suffix) ?
			substr($exp[count($exp) - 1], 0, (strlen($exp[count($exp) - 1]) - strlen($suffix))) :
			$exp[count($exp) - 1];
	}
829839
public function add($name,$bind,$method='GET',$domain='',$suffix='')
    {
        $prefix=isset($this->group['prefix']) ? $this->group['prefix'] : '';
        $suffix=isset($this->group['suffix']) ? $this->group['suffix'] : '';
        $namespace=isset($this->group['namespace']) ? $this->group['namespace'].'/' : '';
        if(is_array($bind)){
            $as=$bind['as'];
            $bind=$bind['uses'];
        }else{
            $as='';
        }
        $this->index=Lists::set([
            'name'=>$as,
            'pattern'=>$prefix.$name.$suffix,
            'bind'=>$namespace.$bind,
            'method'=>$method,
            'domain'=>($domain=='' ? (isset($this->group['domain']) ? $this->group['domain'] : '') : $domain),
        ]);
        return $this;
    }
608381
public function setPrefix($prefix)
    {
        $this->prefix = $prefix;
        $this->identifier = $this->prefix.$this->key;

        return $this;
    }
504102
protected function buildCoalescedStrings(array $prefixStrings, array $suffix)
	{
		$strings = $this->runPass($this->buildPrefix($prefixStrings));
		if (count($strings) === 1 && $strings[0][0][0] === [])
		{
			// If the prefix has been remerged into a list of strings which contains only one string
			// of which the first element is an optional alternations, we only need to append the
			// suffix
			$strings[0][] = $suffix;
		}
		else
		{
			// Put the current list of strings that form the prefix into a new list of strings, of
			// which the only string is composed of our optional prefix followed by the suffix
			array_unshift($strings, []);
			$strings = [[$strings, $suffix]];
		}

		return $strings;
	}
265366
public function toCSS($prefix='', $suffix='') {
        $defs = array();
        if ($this->width !== FALSE) {
            $defs[] = 'width:'.
                addslashes(self::toCSSvalue($this->width)).';';
        }
        if ($this->height !== FALSE) {
            $defs[] = 'height:'.
                addslashes(self::toCSSvalue($this->height)).';';
        }
        return $prefix.implode(' ', $defs).$suffix;
    }
465452
public static function pluginClassQuestion($suffix = '') {
    $default_class = function ($vars) use ($suffix) {
      $unprefixed_plugin_id = preg_replace('/^' . $vars['machine_name'] . '_/', '', $vars['plugin_id']);
      return Utils::camelize($unprefixed_plugin_id) . $suffix;
    };
    return new Question('Plugin class', $default_class);
  }
1267912
private static URI addSuffix(final URI href, final String suffix) {
        return URI.create(addSuffix(href.toString(), suffix));
    }
357160
public function getPathByConvention($suffix = null)
    {
        if (empty($suffix)) {
            return sprintf('%s_nodes', $this->getBundleName());
        }

        return sprintf('%s_nodes_%s', $this->getBundleName(), $suffix);
    }
565391
private function addPrefixSuffix($value)
    {
        if (!is_null($this->prefix) || !is_null($this->suffix)) {
            return (string) $this->prefix . $value . (string) $this->suffix;
        }

        return $value;
    }
1112982
public function prepend($prefix): Utility
    {
        return new static(new static($prefix, $this->encoding) . $this->string, $this->encoding);
    }
316893
public function toAttr($prefix='', $suffix='') {
        $attrs = array();
        if ($this->width !== FALSE) {
            $attrs[] = 'width="'.addslashes($this->width).'"';
        }
        if ($this->height !== FALSE) {
            $attrs[] = 'height="'.addslashes($this->height).'"';
        }
        return $prefix.implode(' ', $attrs).$suffix;
    }
588181
public function endsWith($suffix) {
		$other = new Str($suffix, $this->charset);

		return mb_strrpos($this->rawString, $suffix, 0, $this->charset) === ($this->length() - $other->length());
	}
813768
private void addAffixes(char[] container, char[] prefix, char[] suffix) {

        // We add affixes only if needed (affix length > 0).
        int pl = prefix.length;
        int sl = suffix.length;
        if (pl != 0) prependPrefix(prefix, pl, container);
        if (sl != 0) appendSuffix(suffix, sl, container);

    }
340224
public function getPublicFormKey($suffix = null)
    {
        $val = sprintf('%s_public_form', $this->getPostType());
        return ($suffix) ? sprintf('%s_%s', $val, $suffix) : $val;
    }