Table of Contents
Typ get-path! vrací neredukovanou (nevyhodnocenou) hodnotu typu path!.
Typ get-path! je členem těchto typesetů: series!, any-block!, any-path!.
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/bazPrázdný objekt dané velikosti typu get-path lze vytvořit zadáním celočíselné hodnoty coby argument funkcí make:
>> make get-path! 10
== :Konverze to:
>> to get-path! "foo bar baz"
== :foo/bar/bazBNF:
<get-path-literal> ::= :<path-literal>
<path-literal> ::= <path-head>/<selector>
<path-head> ::= <word-literal> | <path-literal>
<selector> ::= <integer> | <word-literal> | :<word-literal> | <paren>Parse:
get-path: [get-word! some selector]
selector: [#"/" [integer! | word! | get-word! | paren!]]Path-head datatypes: get-word!, get-path!
Hodnota get-path! se řídí stejnými pravidly jako path!, až k dosažení selektoru, kdy je selektorem odkazovaná hodnota vrácena bez vyhodnocení.
Funkci get-path? použijeme při ověřování typu get-path!.
>> get-path? first [:foo/bar]
== true
>> get-path? quote :foo/bar
== trueDatový typ zjistíme funkcí type?.
>> type? first [:foo/bar]
== get-path!
>> type? quote :foo/bar
== get-path!