All Manuals > Release Notes and Installation Guide > 12 Release Notes

12.12 Objective-C changes

This section applies only to Macintosh and iOS platforms. See the LispWorks Objective-C and Cocoa Interface User Guide and Reference Manual for details.

12.12.1 NSString conversion functions

The newly documented functions objc:ns-string-to-string and objc:string-to-ns-string can be used to do an explicit conversion between Objective-C NSString and Lisp strings in cases where the automatic conversions are not possible.

These functions were defined in previous versions of LispWorks but were not documented until LispWorks 8.1.

12.12.2 Handling typedefs

The newly documented macro objc:define-objc-typedef can be used to define an Objective-C typedef.

12.12.3 The NSCopying protocol

The class objc:standard-objc-object now implements the NSCopying protocol method copyWithZone: to call objc:objc-object-copied. This implementation of copyWithZone: assumes that the the superclass also implements NSCopying to copy all of its instance variables.

12.12.4 Calling variadic methods with objc:invoke

The functions objc:invoke, objc:invoke and objc:invoke-into can now be used to call variadic methods by specifying the argument types and a value for the :variadic-num-of-fixed keyword.


Release Notes and Installation Guide - 25 Feb 2025 19:14:05