A scheme must be initialized before it is used. It had better guarantee to keep only one instance of a scheme.
The following code is snipped out of pgg-gpg.el. Once an
instance of pgg-gpg scheme is initialized, it’s stored to the
variable pgg-scheme-gpg-instance and will be reused from now on.
(defvar pgg-scheme-gpg-instance nil)
(defun pgg-make-scheme-gpg ()
(or pgg-scheme-gpg-instance
(setq pgg-scheme-gpg-instance
(luna-make-entity 'pgg-scheme-gpg))))
The name of the function must follow the
regulation—pgg-make-scheme- follows the back end name.