NeoVier/elm-eos/1.0.0

Renamed to henriquecbuss/elm-eos. It is published under that name, and new versions come out there.

Versions published as NeoVier/elm-eos still install under that name. 1 version of 1 come from the new location (see their notes).

Rerouted (renamed, needs approval). The GitHub user or repository was renamed. The tag is still there, at the new name. The Lamdera package server serves a copy recovered from https://github.com/henriquecbuss/elm-eos.

What we checked: The repo moved to github.com/henriquecbuss/elm-eos and tag 1.0.0 is there; its commit 12b679fbd416 is from 2022-11-04 12:13 UTC, after the version was published (2022-11-04 02:04 UTC); elm.json differs from package.elm-lang.org's; the exposed modules match docs.json; the zip's SHA-1 is not the published one and nothing else confirms its contents.

We could not verify this copy against what was published, so the Lamdera compiler asks before using it (y/n). Without a terminal, as in CI, it stops with an error unless approved:

  • lamdera make --auto-approve-package-rerouting approves rerouted versions for that run,
  • LAMDERA_AUTO_APPROVE_PACKAGE_REROUTING=1 does the same for every run in that environment,
  • LAMDERA_CACHE=off skips the Lamdera package server altogether: packages come from package.elm-lang.org and GitHub only, as with elm, and a rerouted version then fails to download.

Details · package.elm-lang.org's zip: https://github.com/NeoVier/elm-eos/zipball/1.0.0/

Eos.SymbolCode

A symbol code is usually used in a Symbol, along with a precision.

The symbol code is the "name" of the symbol. For example, the symbol 0,ABC has precision 0 and symbol code ABC.

A symbol code is a String of up to 7 characters, consisting of uppercase letters from A-Z.

Converting to and from String

toString : SymbolCode -> String

Convert a SymbolCode to a String

fromString "EOS"
    |> Result.map toString
--> Ok "EOS"
fromString : String -> Result Error SymbolCode

Convert a String into a SymbolCode. A SymbolCode must be a String of up to 7 characters, all uppercase letters (A-Z).

fromString "Test"
--> Err (InvalidCharacters ( 'e', [ 's', 't' ] ))


fromString "VERYLONG"
--> Err TooLong


fromString "EOS"
    |> Result.map toString
--> Ok ("EOS")
type Error
= InvalidCharacters ( Char, List Char )
| TooLong

Converting a String into a SymbolCode (with fromString) can fail. This type represents all of the possible errors.

fromString "Test"
--> Err (InvalidCharacters ( 'e', [ 's', 't' ] ))


fromString "VERYLONG"
--> Err TooLong


fromString "EOS"
    |> Result.map toString
--> Ok ("EOS")
errorToString : Error -> String

You can use this function to convert an Error into a human-readable String.

Dealing with JSON

encode : SymbolCode -> Value

Encode a SymbolCode into JSON.

Decode a SymbolCode from JSON. It already does all of the validation necessary to ensure the SymbolCode is valid.