On this page:
4.1 IUSE structs
piuse
piuses
4.2 IUSE helper functions
piuse-default?
4.3 IUSE conversion
piuse-default->string
piuse->string
piuses->string
string->piuse
string->piuses
8.12

4 IUSE🔗ℹ

 (require pmsf/iuse) package: pmsf-iuse

4.1 IUSE structs🔗ℹ

struct

(struct piuse (default flag)
    #:extra-constructor-name make-piuse
    #:transparent)
  default : piuse-default?
  flag : string?

Example:
> (piuse 'enabled "wayland")

(piuse 'enabled "wayland")

struct

(struct piuses (iuses)
    #:extra-constructor-name make-piuses
    #:transparent)
  iuses : (listof iuse?)

Example:
> (piuses (list (piuse 'enabled "wayland")))

(piuses (list (piuse 'enabled "wayland")))

4.2 IUSE helper functions🔗ℹ

procedure

(piuse-default? v)  boolean?

  v : any

Examples:
> (piuse-default? 'disabled)

#t

> (piuse-default? 'enabled)

#t

> (piuse-default? #false)

#t

> (piuse-default? "asd")

#f

4.3 IUSE conversion🔗ℹ

procedure

(piuse-default->string a-piuse-default)  string?

  a-piuse-default : piuse-default?

Example:
> (piuse-default->string 'enabled)

"+"

procedure

(piuse->string a-piuse)  string?

  a-piuse : piuse?

Example:
> (piuse->string (piuse 'enabled "wayland"))

"+wayland"

procedure

(piuses->string a-piuses)  string?

  a-piuses : piuses?

Example:
> (piuses->string (piuses (list (piuse 'enabled "wayland"))))

"+wayland"

procedure

(string->piuse a-string)  piuse?

  a-string : string?

Example:
> (string->piuse "+wayland")

(piuse 'enabled "wayland")

procedure

(string->piuses a-string)  piuses?

  a-string : string?

Example:
> (string->piuses "+wayland")

(piuses (list (piuse 'enabled "wayland")))