On this page:
9.1 SLOT special elements
slot-name-string?
9.2 SLOT struct
pslot
9.3 SLOT conversion
pslot->string
port->pslot
string->pslot
8.12

9 SLOT🔗ℹ

 (require pmsf/slot) package: pmsf-slot

9.1 SLOT special elements🔗ℹ

procedure

(slot-name-string? v)  boolean?

  v : any

Example:
> (slot-name-string? "1.2.3")

#t

9.2 SLOT struct🔗ℹ

 (require pmsf/slot/struct) package: pmsf-slot

struct

(struct pslot (supername subname)
    #:extra-constructor-name make-pslot
    #:transparent)
  supername : slot-name-string?
  subname : (or/c #false slot-name-string?)

Example:
> (pslot "1.2.3" "4")

(pslot "1.2.3" "4")

9.3 SLOT conversion🔗ℹ

 (require pmsf/slot/convert) package: pmsf-slot

procedure

(pslot->string input-pslot)  string?

  input-pslot : pslot?

Examples:
> (pslot->string (pslot "1.2.3" #false))

"1.2.3"

> (pslot->string (pslot "1.2.3" "4"))

"1.2.3/4"

procedure

(port->pslot input-port)  pslot?

  input-port : input-port?

procedure

(string->pslot input-string)  pslot?

  input-string : string?

Examples:
> (string->pslot "1.2.3")

(pslot "1.2.3" #f)

> (string->pslot "1.2.3/4")

(pslot "1.2.3" "4")