Datový typ get-path!

1. Úvodem

Typ get-path! vrací neredukovanou (nevyhodnocenou) hodnotu selektoru cesty.

Typ get-path! je členem těchto typesetů: any-block!, any-path!, series!

2. Vytvoření

Hodnoty typu get-path! mohou být vytvořeny při runtime použitím konstruktoru make nebo konverzí to.

>> make get-path! [foo bar baz]
== :foo/bar/baz

Prázdný objekt typu get-path lze vytvořit funkcí make pro libovolný celočíselný argument:

>> make get-path! 10
== :                         ; k čeme to je dobré?

Konverze to:

>> to get-path! "foo bar baz"
== :foo/bar/baz

3. Literálová skladba

<get-path-literal>  ::= :<path-literal>

<path-literal> ::= <path-head>/<selector>
<path-head>    ::= <word-literal> | <path-literal>
<selector>     ::= <integer> | <word-literal> | :<word-literal> | <paren>

Path-head datatypes: get-word!, get-path!

Selector datatypes: integer!, word!, get-word!, paren!

4. Postup při vyhodnocení

Hodnota get-path! se řídí stejnými pravidly jako path!, až k dosažení selektoru, kdy je selektorem odkazovaná hodnota vrácena bez vyhodnocení.

5. Testování hodnot

Funkci get-path? použijeme při ověřování typu get-path!.

>> get-path? first [:foo/bar]
== true

>> get-path? quote :foo/bar
== true

Datový typ zjistíme funkcí type?.

>> type? first [:foo/bar]
== get-path!

>> type? quote :foo/bar
== get-path!

6. Předdefinovaná slova

6.1. Funkce

get-path?, to-get-path

results matching ""

    No results matching ""