📄 notes
字号:
-*-text-*-==> For instructions on how to get swig bindings working, read the INSTALL file in this directory.SVN HEADER -> SWIG MODULE-------------------------Subversion has a bunch of include files, some which are interesting forwrapping with language bindings, and others which are simple typedeclarations and constants. Below is the table which maps each headerto its disposition:INCLUDE SWIG MODULE NAMEsvn_auth.h _core (some symbols)svn_base64.h (1)svn_client.h _clientsvn_cmdline.h (2)svn_config.h _core (some symbols)svn_ctype.h (1)svn_dav.h (2)svn_delta.h _deltasvn_error.h (2)svn_error_codes.h _coresvn_fs.h _fssvn_hash.h (1)svn_io.h _core (only stream functions)svn_md5.h (1)svn_opt.h _core (some symbols)svn_path.h _core (some symbols, 1)svn_pools.h _core (only pool manipulation)svn_props.h _core (some symbols)svn_quoprint.h (1)svn_ra.h _rasvn_ra_svn.h (2)svn_repos.h _repossvn_sorts.h (1)svn_string.h (3)svn_subst.h (2)svn_test.h (2)svn_time.h _core (some symbols)svn_types.h (3)svn_utf.h (1)svn_version.h _core (some symbols)svn_wc.h _wcsvn_xml.h (1)apr*.h (3)(1) It is assumed that the binding languages will provide this functionality separately. ### HELP: Java does not provide base-64 natively. Should we wrap ### SVN's with SWIG, or include a stand-alone ASF implementation ### (such as from Jakarta Commons Codec)?(2) No significant/interesting functionality to export.(3) A SWIG interface file exists, but only to export types used by other modules. No binding module is actually constructed from this header.SWIG MODULES------------We will produce a number of modules/classes, expecting the bindinglanguages to organize these into a package, and present the Subversionlibraries' API in a manner familiar to programmers of a givenlanguage. For instance, the Python bindings are handled as follows:svn.coresvn.clientsvn.deltasvn.fssvn.rasvn.repossvn.wcTHUNK EDITORS-------------"Thunk" is Windows programming term describing a "go between." OurSWIG bindings generally implement editors in C which delegate to thelanguage-specific extension API (e.g. its C API for Python, JNI forJava, etc.). This transitional object implements a Subversion editorinterface, allowing it to be passed between its native library codeand the runtime of the language which the bindings were written for.SWIG INTERFACE FILE CODING NOTES--------------------------------Always place %{ #include "foo.h" ... %} sections above any code whichwill actually cause SWIG to generate wrappers. This is because thosewrappers may need declarations from the headers to be valid C.Practically, this means that the %{ ... %} block should be above any"%include *.h" statements (%includes of *.i files are fine, since theyshould be self-sufficient).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -