\input texinfo @c -*- texinfo; coding: utf-8 -*- @c %**start of header @setfilename objective-cl.info @settitle Objective-CL @c %**end of header @c The time stamp is automatically maintained by Emacs. @c Time-stamp: <2008-03-23 12:59:58 mulk> @set VERSION 0.2.2 @set UPDATED 12. September 2007 @c Wichtige Emacsbefehle: @c C-c C-c n @c C-c C-u C-n @c C-c C-u C-m @c C-c C-u C-e @c C-c C-u C-a @c C-c C-u m @c vr @c fn @c cp @defindex mc @defindex cl @defindex sym @copying This is the official manual for Objective-CL (version @value{VERSION}, @value{UPDATED}), a portable Objective-C bridge for Common Lisp. Copyright @copyright{} 2007 Matthias Benkard. @quotation @end quotation @end copying @dircategory Lisp Programming @direntry * Objective-CL: (Objective-CL)A portable Objective-C bridge for Common Lisp. @end direntry @dircategory Common Lisp @direntry * Objective-CL: (Objective-CL)A portable Objective-C bridge for Common Lisp. @end direntry @titlepage @title Objective-CL User Manual @subtitle for version @value{VERSION}, @value{UPDATED} @author Matthias Andreas Benkard (@email{matthias@@benkard.de}) @page @vskip 0pt plus 1filll @insertcopying @end titlepage @contents @ifnottex @node Top @top Objective-CL @insertcopying @end ifnottex @menu * Introduction:: What Objective-CL is all about. * Getting Started:: A quick-start guide to Objective-CL. * Installation:: * Objective-CL Concepts:: Selectors, class instances, and method invocations. * Interacting with Objective-C:: Invoking methods, creating instances, defining classes, and converting data. * Reference Manual:: A reference of the Objective-CL API. * Copying This Manual:: The GNU General Public License, Version 3. * Function Index:: * Macro Index:: * Variable Index:: * Class Index:: * Symbol Index:: A list of symbols defined by Objective-CL. * Concept Index:: A menu covering many concepts. @end menu @node Introduction @chapter Introduction @menu * Purpose:: Whom Objective-CL is for and why it exists. * History:: How the project came to be. @end menu @node Getting Started @chapter Getting Started @menu * Installation:: How to acquire and install Objective-CL. * A Simple Example:: Using Objective-CL to invoke methods. @end menu @node Installation @chapter Installation @node Objective-CL Concepts @chapter Objective-CL Concepts @menu @end menu @node Interacting with Objective-C @chapter Interacting with Objective-C @menu * Initialisation and Shutdown:: Initialising the Objective-C runtime and shutting it down cleanly. * Calling Objective-C:: Instantiating and retrieving classes and objects, and ways of sending messages to them. @end menu @node Initialisation and Shutdown @section Initialisation and Shutdown @menu * Initialising the runtime:: * Shutting the runtime down:: Details: * Function `initialise-runtime':: * Function `shutdown-runtime':: @end menu @node Calling Objective-C @section Calling Objective-C @menu * Using the `invoke' function:: The primitive, but safe way of doing things. * Objective-C-style invocations:: Invoking methods in a syntactically pleasant way. Details: * Function `invoke':: * Function `invoke-by-name':: * Function `install-reader-syntax':: Convenience functions: * Function `objc-eql':: * Function `objc-equal':: @end menu @node Using the `invoke' function @subsection Using the @code{invoke} function @node Objective-C-style invocations @subsection Objective-C-style invocations @node Function `invoke' @subsection Function @code{invoke} @c @include fun_invoke.texinfo @node Function `invoke-by-name' @subsection Function @code{invoke-by-name} @c @include fun_invoke-by-name.texinfo @node Function `install-reader-syntax' @subsection Function @code{install-reader-syntax} @c @include fun_install-reader-syntax.texinfo @node Function `objc-eql' @subsection Function @code{objc-eql} @c @include fun_objc-eql.texinfo @node Function `objc-equal' @subsection Function @code{objc-equal} @c @include fun_objc-equal.texinfo @node Reference Manual @chapter Reference Manual @menu * Functions:: Details about some functions. @c * Macros:: Details about some macros. * Variables:: Details about some special variables. * Classes:: Details about some classes. * Function Index:: A list of all functions. @c * Macro Index:: A list of all macros. * Variable Index:: A list of all special variables. * Class Index:: A list of all classes. @end menu @ignore @include extracted-docs.texinfo @node Macro @code{invoke} @chapter Macro @code{invoke} @findex invoke @symindex invoke @cindex invoking methods via @code{invoke} @include m_invoke.texinfo @end ignore @node Copying This Manual @appendix Copying This Manual @menu * GNU General Public License:: The license for copying this manual. @end menu @c @include fdl.texi @node Function Index @unnumbered Index of Functions @printindex fn @ignore @node Macro Index @unnumbered Index of Macros @printindex mc @end ignore @node Variable Index @unnumbered Index of Special Variables @printindex vr @node Class Index @unnumbered Index of Classes @printindex cl @node Symbol Index @unnumbered Index of Symbols @printindex sym @node Concept Index @unnumbered Index of Concepts @printindex cp @bye