annotate src/if_mzsch.h @ 7601:88c4c634e919

Added tag v7.4.1099 for changeset fa59fafb6a9464b579504aa6c5abe6d5d0382f0d
author Christian Brabandt <cb@256bit.org>
date Fri, 15 Jan 2016 22:15:05 +0100
parents 16e8a09e8ab0
children 068f397d0da4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
1 /* vi:set ts=8 sts=4 sw=4:
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
2 *
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
3 * MzScheme interface for Vim, wrapper around scheme.h
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
4 */
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
5 #ifndef _IF_MZSCH_H_
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
6 #define _IF_MZSCH_H_
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
7 #ifdef __MINGW32__
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
8 /* Hack to engage Cygwin-specific settings */
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
9 # define __CYGWIN32__
4074
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
10 # include <stdint.h>
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
11 #endif
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
12
800
d8f905020502 updated for version 7.0b
vimboss
parents: 274
diff changeset
13 /* #ifdef needed for "make depend" */
d8f905020502 updated for version 7.0b
vimboss
parents: 274
diff changeset
14 #ifdef FEAT_MZSCHEME
1894
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
15 # include <schvers.h>
800
d8f905020502 updated for version 7.0b
vimboss
parents: 274
diff changeset
16 # include <scheme.h>
d8f905020502 updated for version 7.0b
vimboss
parents: 274
diff changeset
17 #endif
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
18
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
19 #ifdef __MINGW32__
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
20 # undef __CYGWIN32__
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
21 #endif
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
22
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
23 #if MZSCHEME_VERSION_MAJOR >= 299
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
24 # define SCHEME_STRINGP(obj) (SCHEME_BYTE_STRINGP(obj) || SCHEME_CHAR_STRINGP(obj))
4074
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
25 # define BYTE_STRING_VALUE(obj) ((char_u *)SCHEME_BYTE_STR_VAL(obj))
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
26 #else
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
27 /* macros for compatibility with older versions */
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
28 # define scheme_current_config() scheme_config
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
29 # define scheme_make_sized_byte_string scheme_make_sized_string
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
30 # define scheme_format_utf8 scheme_format
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
31 # ifndef DYNAMIC_MZSCHEME
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
32 /* for dynamic MzScheme there will be separate definitions in if_mzsch.c */
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
33 # define scheme_get_sized_byte_string_output scheme_get_sized_string_output
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
34 # define scheme_make_byte_string scheme_make_string
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
35 # define scheme_make_byte_string_output_port scheme_make_string_output_port
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
36 # endif
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
37
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
38 # define SCHEME_BYTE_STRLEN_VAL SCHEME_STRLEN_VAL
4074
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
39 # define BYTE_STRING_VALUE(obj) ((char_u *)SCHEME_STR_VAL(obj))
274
8fa8d7964cf1 updated for version 7.0073
vimboss
parents: 14
diff changeset
40 # define scheme_byte_string_to_char_string(obj) (obj)
4074
16e8a09e8ab0 updated for version 7.3.791
Bram Moolenaar <bram@vim.org>
parents: 2330
diff changeset
41 # define SCHEME_BYTE_STRINGP SCHEME_STRINGP
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
42 #endif
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
43
1894
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
44 /* Precise GC macros */
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
45 #ifndef MZ_GC_DECL_REG
2330
ea4bf6df1a8a Whitespace cleanup.
Bram Moolenaar <bram@vim.org>
parents: 1894
diff changeset
46 # define MZ_GC_DECL_REG(size) /* empty */
1894
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
47 #endif
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
48 #ifndef MZ_GC_VAR_IN_REG
2330
ea4bf6df1a8a Whitespace cleanup.
Bram Moolenaar <bram@vim.org>
parents: 1894
diff changeset
49 # define MZ_GC_VAR_IN_REG(x, v) /* empty */
1894
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
50 #endif
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
51 #ifndef MZ_GC_ARRAY_VAR_IN_REG
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
52 # define MZ_GC_ARRAY_VAR_IN_REG(x, v, l) /* empty */
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
53 #endif
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
54 #ifndef MZ_GC_REG
2330
ea4bf6df1a8a Whitespace cleanup.
Bram Moolenaar <bram@vim.org>
parents: 1894
diff changeset
55 # define MZ_GC_REG() /* empty */
1894
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
56 #endif
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
57 #ifndef MZ_GC_UNREG
2330
ea4bf6df1a8a Whitespace cleanup.
Bram Moolenaar <bram@vim.org>
parents: 1894
diff changeset
58 # define MZ_GC_UNREG() /* empty */
1894
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
59 #endif
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
60
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
61 #ifdef MZSCHEME_FORCE_GC
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
62 /*
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
63 * force garbage collection to check all references are registered
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
64 * seg faults will indicate not registered refs
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
65 */
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
66 # define MZ_GC_CHECK() scheme_collect_garbage();
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
67 #else
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
68 # define MZ_GC_CHECK() /* empty */
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
69 #endif
afb740b5dfab updated for version 7.2-191
vimboss
parents: 800
diff changeset
70
14
946da5994c01 updated for version 7.0006
vimboss
parents:
diff changeset
71 #endif /* _IF_MZSCH_H_ */