Datovýtyp refinement!

1. Úvodem

Refinement! (upřesnění) je symbolická hodnota typu word!, který se nejčastěji používák zadáníspecifikací funkce. Koncepčně je cesta (path) řadou postupných upřesění. Tato forma se používá při specifikaci souborů, adres URL, rovněž se používá za účlem přístupu ke konkretním hodnotám v objektech.

Funkce repend bez upřesnění:

>> repend ["foo"] [21 * 2]
== ["foo" 42]

S upřesněním /only:

>> repend/only ["foo"] [21 * 2]
== ["foo" [42]]

Typ refinement! je subtypem typesetů all-word! a immediate!.

2. Vytvoření

Hodnoty typu refinement! lze vytvo?it použití literálovésyntaxe nebo při runtimu konstruktorem make nebo konverzí to.

>> make refinement! "foo"
== /foo
>> to refinement! 'bar
== /bar

3. Literálováskladba

Lomíko /, následované jední či více znaky sady Unicode, včetně interpunkčních znaků ze sady ASCII: ! & ' * + - . < = > ? _ | ~`

Nepovolenýi znaky jsou řídící znaky, znaky mezer a interpunkční znaky ze sady ASCII: / \ ^ , [ ] ( ) { } " # $ % @ : ;

Note
Použití znaku @ nevyvolá chybu, ale způsobí, že se hodnota refinement! vrátí jako email!.

4. Komparace

Na refinement! lze aplikovat všechny komparátory: =, ==, <>, >, <, >=, <=, =?.

5. Testování hodnot

Funkce refinement? slouží k ověření, zda je zadaná hodnota typu refinement!.

>> refinement? /foo
== true

>> refinement? third [42 "Foo" /bar]
== true

Funkce type? vrací datový typ zadané hodnoty.

>> type? /foo
== refinement!

>> type? third [42 "Foo" /bar]
== refinement!

6. Předdefinovaná slova

6.1. Funkce

parse-func-spec, refinement?, to-refinement

6.2. Natives

function

results matching ""

    No results matching ""