wppaste
WordPress

ParagonIE_Sodium_Core32_Curve25519_Fe

Source
wp-includes/sodium_compat/src/Core32/Curve25519/Fe.php:12
Class ParagonIE_Sodium_Core32_Curve25519_Fe

Description

This represents a Field Element

Compatibility

WordPress
core
  • 6.7.7
  • 6.8.8
  • 6.9.7
  • 7.0.4
  • 7.1.0

Present in every tracked release (6.7.7 to 7.1.0).

Properties · 2

$containerarray<int,protected
$sizeintprotected

Methods · 7

Source code

class ParagonIE_Sodium_Core32_Curve25519_Fe implements ArrayAccess{    /**     * @var array<int, ParagonIE_Sodium_Core32_Int32>     */    protected $container = array();     /**     * @var int     */    protected $size = 10;     /**     * @internal You should not use this directly from another application     *     * @param array<int, ParagonIE_Sodium_Core32_Int32> $array     * @param bool $save_indexes     * @return self     * @throws SodiumException     * @throws TypeError     */    public static function fromArray($array, $save_indexes = null)    {        $count = count($array);        if ($save_indexes) {            $keys = array_keys($array);        } else {            $keys = range(0, $count - 1);        }        $array = array_values($array);         $obj = new ParagonIE_Sodium_Core32_Curve25519_Fe();        if ($save_indexes) {            for ($i = 0; $i < $count; ++$i) {                $array[$i]->overflow = 0;                $obj->offsetSet($keys[$i], $array[$i]);            }        } else {            for ($i = 0; $i < $count; ++$i) {                if (!($array[$i] instanceof ParagonIE_Sodium_Core32_Int32)) {                    throw new TypeError('Expected ParagonIE_Sodium_Core32_Int32');                }                $array[$i]->overflow = 0;                $obj->offsetSet($i, $array[$i]);            }        }        return $obj;    }     /**     * @internal You should not use this directly from another application     *     * @param array<int, int> $array     * @param bool $save_indexes     * @return self     * @throws SodiumException     * @throws TypeError     */    public static function fromIntArray($array, $save_indexes = null)    {        $count = count($array);        if ($save_indexes) {            $keys = array_keys($array);        } else {            $keys = range(0, $count - 1);        }        $array = array_values($array);        $set = array();        /** @var int $i */        /** @var int $v */        foreach ($array as $i => $v) {            $set[$i] = ParagonIE_Sodium_Core32_Int32::fromInt($v);        }         $obj = new ParagonIE_Sodium_Core32_Curve25519_Fe();        if ($save_indexes) {            for ($i = 0; $i < $count; ++$i) {                $set[$i]->overflow = 0;                $obj->offsetSet($keys[$i], $set[$i]);            }

Changelog

Unchanged from 6.7.7 through 7.1.0.

  1. 6.7.7
  2. 6.8.8
  3. 6.9.7
  4. 7.0.4
  5. 7.1.0

Signature, return type and hooks compared across 5 parsed releases.

About this page

Parsed data
Generated from the wordpress-develop 7.1.0 tag, from src/wp-includes/sodium_compat/src/Core32/Curve25519/Fe.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it.
Corrections
Something wrong on this page? Report it and it gets fixed in the next regeneration.