all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* custom type tests
@ 2007-12-01  1:09 Drew Adams
  2007-12-01  1:38 ` Lennart Borgman (gmail)
  0 siblings, 1 reply; 6+ messages in thread
From: Drew Adams @ 2007-12-01  1:09 UTC (permalink / raw)
  To: Emacs-Devel

Does anyone know of code that deals with custom types in such a way that you
could test whether the type of a user option is compatible with a given
type?

For instance, if a variable `foo' is of type `regexp' and `bar' is of type
`color', I would want a test for compatibility with type `string' to return
non-nil for each, since a regexp and a color are strings.

As another example, if `foo' is of type `string', I would want a test for
compatibility with type (choice (const nil) string) to return non-nil, since
a string is in the union of all strings and {nil}.

Any existing code that deals with subtypes this way? Any code that deals
with custom type tests, other than just `custom-variable-type' and (get __
'custom-type)?

I'm looking for code that would allow flexible type tests - subtyping, if
possible (see above), but also not differentiating between types such as
(choice (const :tag "toto" nil) string) and (choice (const nil) string) or
between (choice (choice (const nil) string) and (choice string (const nil)).

Any pointers to pertinent code or doc are appreciated. Think of it this way:
Given a custom type, how can I find all user options that have that type (or
a compatible type, such as a subtype)?

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2007-12-01 20:12 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-12-01  1:09 custom type tests Drew Adams
2007-12-01  1:38 ` Lennart Borgman (gmail)
2007-12-01  1:57   ` Lennart Borgman (gmail)
2007-12-01  3:48     ` Drew Adams
2007-12-01 12:17       ` Lennart Borgman (gmail)
2007-12-01 20:12         ` Stephen J. Turnbull

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.