packages feed

eo-phi-normalizer-3.0.0: data/0.49.4/org/eolang/structs/hash-code-of.phi

{⟦
  org() ↦ ⟦
    eolang() ↦ ⟦
      structs() ↦ ⟦
        hash-code-of(input) ↦ ⟦
          input-as-bytes ↦ Φ̇.dataized(ξ.input.as-bytes).as-bytes,
          size ↦ Φ̇.dataized(ξ.input-as-bytes.size).as-bytes,
          magic-number ↦ 31.as-i64,
          φ ↦ ξ.rec-hash-code(0, 0),
          rec-hash-code(acc, index) ↦ ⟦
            φ ↦ ξ.index.eq(ξ.ρ.size).if(
              ξ.acc.as-number,
              ξ.ρ.rec-hash-code(
                ξ.ρ.magic-number.times(ξ.acc).plus(
                  Φ̇.bytes(⟦ Δ ⤍ 00-00-00-00-00-00-00 ⟧).concat(
                    ξ.ρ.input-as-bytes.slice(ξ.index, 1)
                  ).as-i64
                ),
                ξ.index.plus(1)
              )
            )
          ⟧
        ⟧,
        λ ⤍ Package
      ⟧,
      λ ⤍ Package
    ⟧,
    λ ⤍ Package
  ⟧
⟧}