Skip to content

Commit 00b237c

Browse files
committed
Add a brief README for the mono-2.0 directory
1 parent 19f769f commit 00b237c

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

src/native/include/mono-2.0/README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# The Mono Embedding API #
2+
3+
The headers in this directory constitute the `mono-2.0` runtime embedding API. They represent a
4+
contract between the runtime and clients. Care must be taken to ensure that API and ABI
5+
compatibility is not broken. For example: adding or removing function arguments, changing the
6+
return type, changing the layout of defined non-opaque structs, changing the calling convention, etc
7+
may potentially break existing clients and should not be undertaken lightly.
8+
9+
Adding functions constitutes a contract between the runtime and potential future clients. Adding a
10+
new public API function incurs a maintenance cost. Care should be taken.
11+
12+
## Unstable embedding API ##
13+
14+
The headers `mono-private-unstable.h` in each subdirectory are an exception to the above guarantees.
15+
Functions added to these headers represent "work in progress" and may break API semantics or ABI
16+
compatability. Clients using these functions are generally tightly coupled to the development of
17+
the runtime and take on responsibility for any breaking changes.
18+
19+
20+

0 commit comments

Comments
 (0)