ftp.nice.ch/pub/next/developer/objc/appkit/LispExample.s.tar.gz#/LispExample/Lisp.h

This is Lisp.h in view mode; [Download] [Up]

/*
**	Lisp.h
**	Lisp client object with message-based I/O.
**	Lee Boynton, NeXT, Inc., 1989
*/


#import <objc/Object.h>

@interface Lisp : Object
{
    id delegate;
    int lisp_pid;
    int lisp_in_fd;
    int lisp_out_fd;
}

+ new;
- free;
    /*
    ** The new method launches the lisp process determined by the
    ** 'LispImage' default (which itself defaults to 'cl'). If multiple
    ** Lisp objects are created, each one has a new lisp process.
    ** If any error occurs, nil is returned.
    ** When the Lisp object is freed, the lisp process is killed.
    */

- setDelegate:anObject;
- delegate;
    /*
    ** Sets/gets the delegate of the Lisp object. The delegate will receive
    ** lispOutput: message whenever the lisp process outputs to stdout or
    ** stderr.
    */

- inputLisp:(const char *)theString;
    /*
    ** Enqueue the string onto the lisp process's stdin.
    */

- interruptLisp;
    /*
    ** Send a 'keyboard interrupt' signal to the lisp process.
    */

@end


@interface LispDelegate

- lispOutput:(const char *)theString;
@end




These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.