summaryrefslogtreecommitdiff
path: root/src/module-env-28.h
blob: f8820b0606be3b8f5cb8fc25bc7b732d01b48135 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
  /* Add module environment functions newly added in Emacs 28 here.
     Before Emacs 28 is released, remove this comment and start
     module-env-29.h on the master branch.  */

  void (*(*EMACS_ATTRIBUTE_NONNULL (1)
            get_function_finalizer) (emacs_env *env,
                                     emacs_value arg)) (void *) EMACS_NOEXCEPT;

  void (*set_function_finalizer) (emacs_env *env, emacs_value arg,
                                  void (*fin) (void *) EMACS_NOEXCEPT)
    EMACS_ATTRIBUTE_NONNULL (1);

  int (*open_channel) (emacs_env *env, emacs_value pipe_process)
    EMACS_ATTRIBUTE_NONNULL (1);

  void (*make_interactive) (emacs_env *env, emacs_value function,
                            emacs_value spec)
    EMACS_ATTRIBUTE_NONNULL (1);

  /* Create a unibyte Lisp string from a string.  */
  emacs_value (*make_unibyte_string) (emacs_env *env,
				      const char *str, ptrdiff_t len)
    EMACS_ATTRIBUTE_NONNULL(1, 2);