langipc.c File Reference

#include "frontier.h"
#include "standard.h"
#include <land.h>
#include "error.h"
#include "memory.h"
#include "ops.h"
#include "strings.h"
#include "file.h"
#include "launch.h"
#include "resources.h"
#include "shell.h"
#include "shellhooks.h"
#include "oplist.h"
#include "lang.h"
#include "langinternal.h"
#include "langipc.h"
#include "langexternal.h"
#include "langsystem7.h"
#include "tableinternal.h"
#include "tablestructure.h"
#include "tableverbs.h"
#include "op.h"
#include "meprograms.h"
#include "process.h"
#include "processinternal.h"
#include "byteorder.h"

Include dependency graph for langipc.c:

Go to the source code of this file.

Data Structures

struct  tyipcaddress
struct  appvisitinfo

Defines

#define keykerneltable   'ktbl'
#define keycurrenttable   'ctbl'
#define landnofileopenerror   (lastinternalerror + 1)
#define idwho   'who?'
#define isruntime   0x0000
#define isfrontier   0x0001
#define bcdversion   0x05000000
#define iswho   (bcdversion + isfrontier)

Typedefs

typedef appvisitinfo tyappvisitinfo
typedef appvisitinfoptrappvisitinfo

Functions

boolean langipcerrorroutine (bigstring bs, ptrvoid refcon)
static void langipchookerrors (hdlverbrecord hverb, callback *savecallback)
static boolean langipcunhookerrors (callback savecallback)
boolean langipcpushparam (tyvaluerecord *valparam, typaramkeyword key, hdlverbrecord hverb)
static boolean langipccoerceparam (AEDesc *param, tyvaluerecord *vreturned)
boolean setdescriptorvalue (AEDesc desc, tyvaluerecord *val)
boolean valuetodescriptor (tyvaluerecord *val, AEDesc *desc)
static boolean langipcfileopen (hdlverbrecord hverb)
static boolean langipcprocessstarted (void)
static boolean langipcruncode (hdlverbrecord hverb, hdltreenode hcode, hdlhashtable hcontext, boolean flstringresult)
static boolean langipchandlerunscript (hdlverbrecord hverb)
static boolean issubroutineverb (hdlverbrecord hverb)
static boolean iskernelverb (hdlverbrecord hverb)
static boolean handlerexpectsnames (hdltreenode hcode, AERecord *event, hdltreenode *hparams)
static boolean findnamedparam (hdltreenode hnames, bigstring bsname)
boolean langipcbuildparamlist (hdltreenode hcode, hdlverbrecord hverb, hdltreenode *hparams)
static boolean langipcvalhascode (const tyvaluerecord *val)
static boolean langipcfindtraphandler (hdlverbrecord hverb, tyvaluerecord *adr)
static boolean langipchandletrapverb (hdlverbrecord hverb, boolean *flfoundhandler)
static pascal boolean langipchandleverb (hdlverbrecord hverb)
static pascal boolean langipcfindhandler (hdlverbrecord hverb)
static boolean setbinarysymbolval (hdlhashtable htable, bigstring bs, Handle x, OSType typeid)
static void langipcexpandnetaddress (tyipcaddress *ipcaddress)
static boolean getnetaddress (hdlhashtable htable, bigstring bsvarname, tyipcaddress *ipcaddress)
boolean langipcbrowsenetwork (hdltreenode hparam1, tyvaluerecord *vreturned)
static boolean getipcaddressvalue (hdltreenode hparam1, short pnum, tyipcaddress *ipcaddress)
boolean langipcgetaddressvalue (hdltreenode hparam1, tyvaluerecord *vreturned)
static boolean getlistpositionvalue (hdltreenode hparam1, short pnum, tyvaluerecord *posval)
boolean langipcconvertoplist (const tyvaluerecord *vlist, AEDesc *list)
boolean langipcconvertaelist (const AEDesc *list, tyvaluerecord *vlist)
void binarytodesc (Handle hbinary, AEDesc *desc)
static boolean stealbinaryhandle (tyvaluerecord *val, Handle *x)
static boolean getbinarylistdesc (boolean flrecord, tyvaluerecord val, AEDescList *listdesc)
boolean langipcputlistitem (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipcgetlistitem (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipccountlistitems (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipcsettimeout (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipcsettransactionid (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipcsetinteractionlevel (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipcgeteventattr (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipccoerceappleitem (hdltreenode hparam1, tyvaluerecord *vreturned)
static boolean langipcgetparamvisit (bigstring bs, hdlhashnode hnode, tyvaluerecord val, ptrvoid refcon)
static boolean langipcpushrecordparams (const tyvaluerecord *vrecord, hdlverbrecord hverb)
static boolean langipcbuildmessage (hdltreenode hparam1, short paramnum, tyipcmessageflags msgflags, tyipcaddress *ipcadr, hdlverbrecord *hverb)
static boolean appinfovisit (hdlhashtable happtable, bigstring bsname, tyappvisitinfo *appvisitinfo)
static boolean apptablevisit (bigstring bsname, hdlhashnode hnode, tyvaluerecord val, ptrvoid refcon)
boolean langipcfindapptable (OSType appsignature, boolean fluseinfoname, hdlhashtable *happtable, bigstring bsname)
static void langipcerrormessage (short iderror, tyipcaddress *ipcaddress, bigstring bsparam, short idoserr)
boolean langipcmessage (hdltreenode hparam1, tyipcmessageflags msgflags, tyvaluerecord *vreturned)
static boolean langipccomplexsend (hdlverbrecord hverb, tyipcaddress *ipcaddress, hdlhashtable htable)
static boolean langipcggettableparam (hdltreenode hparam1, short pnum, boolean flcreate, hdlhashtable *htableparam)
boolean langipccomplexmessage (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipctablemessage (hdltreenode hparam1, tyvaluerecord *vreturned)
static boolean langipcfasterror (bigstring bs, ptrvoid refcon)
static void langipchookfasterrors (AEDesc *reply)
static boolean langipcunhookfasterrors (void)
static boolean langipcnewevent (ProcessSerialNumber *psn, AEEventClass class, AEEventID id, AppleEvent *event)
boolean newselfaddressedevent (AEEventID id, AppleEvent *event)
static OSErr langipcsendevent (AppleEvent *event, AppleEvent *reply)
static boolean langipcgeterrorstring (const AppleEvent *reply, bigstring bserror)
boolean langipcbuildsubroutineevent (AppleEvent *event, bigstring bsname, hdltreenode hparam1)
boolean langipchandlercall (hdltreenode htree, bigstring bsverb, hdltreenode hparam1, tyvaluerecord *vreturned)
boolean langipckernelfunction (hdlhashtable htable, bigstring bsverb, hdltreenode hparam1, tyvaluerecord *vreturned)
static pascal OSErr handleshowmenunode (const AppleEvent *event, AppleEvent *reply, long refcon)
boolean langipcshowmenunode (long hnode)
boolean langipcnoop (void)
static pascal OSErr handleyield (const AppleEvent *event, AppleEvent *reply, long refcon)
static pascal boolean langipcbreakembrace (EventRecord *ev)
static pascal OSErr langipcopenapproutine (void)
static pascal OSErr langipcopendocroutine (FSSpec *fs)
static pascal OSErr langipcquitapproutine (void)
static boolean getpackedobject (Handle htext, Handle *hpacked)
static boolean setpackedobject (Handle htext, Handle hpacked)
static pascal OSErr langipcfastgetobject (AppleEvent *event, AppleEvent *reply, long refcon)
static pascal OSErr langipcfastsetobject (AppleEvent *event, AppleEvent *reply, long refcon)
static pascal OSErr langipchandlefastscript (AppleEvent *event, AppleEvent *reply, long refcon)
static boolean langipcinstallfastscript (void)
static void langipcremovefastscript (void)
boolean langipcstart (void)
void langipcshutdown (void)
static boolean langipceventhook (EventRecord *ev, WindowPtr w)
boolean langipcinit (void)

Variables

typrocessid langipcself
static boolean fltoolkitinitialized = false
static hdlverbrecord hipcverb = nil
static short langipcresfile
static AEDescfastreply
static langerrormessagecallback fastsavecallback


Define Documentation

#define bcdversion   0x05000000
 

Definition at line 86 of file langipc.c.

#define idwho   'who?'
 

Definition at line 82 of file langipc.c.

Referenced by langipchandleverb(), and langipcstart().

#define isfrontier   0x0001
 

Definition at line 84 of file langipc.c.

#define isruntime   0x0000
 

Definition at line 83 of file langipc.c.

#define iswho   (bcdversion + isfrontier)
 

Definition at line 95 of file langipc.c.

Referenced by langipchandleverb().

#define keycurrenttable   'ctbl'
 

Definition at line 77 of file langipc.c.

Referenced by langipchandletrapverb(), and langipckernelfunction().

#define keykerneltable   'ktbl'
 

Definition at line 76 of file langipc.c.

Referenced by langipcfindtraphandler(), and langipckernelfunction().

#define landnofileopenerror   (lastinternalerror + 1)
 

Definition at line 80 of file langipc.c.

Referenced by langipcfileopen().


Typedef Documentation

typedef struct appvisitinfo * ptrappvisitinfo
 

typedef struct appvisitinfo tyappvisitinfo
 


Function Documentation

static boolean appinfovisit hdlhashtable  happtable,
bigstring  bsname,
tyappvisitinfo appvisitinfo
[static]
 

Definition at line 2950 of file langipc.c.

References appidfieldstring, appinfotablestring, appnamefieldstring, bigstring, hashtablelookup(), hnode, langexternalvaltotable(), langgetstringlist(), ostypevaluetype, stringvaluetype, and texthandletostring().

Referenced by apptablevisit().

Here is the call graph for this function:

static boolean apptablevisit bigstring  bsname,
hdlhashnode  hnode,
tyvaluerecord  val,
ptrvoid  refcon
[static]
 

Definition at line 2991 of file langipc.c.

References appinfovisit(), tytablevariable::flinmemory, gettablevariable(), hnode, tableverbinmemory(), and tableverbunload().

Referenced by langipcfindapptable().

Here is the call graph for this function:

void binarytodesc Handle  hbinary,
AEDesc desc
 

Definition at line 2171 of file langipc.c.

References copydatahandle(), copyhandle(), tyAEDesc::descriptorType, disposehandle(), newdescwithhandle(), nil, pullfromhandle(), putdeschandle(), and sizeof().

Referenced by coercetolist(), getbinarylistdesc(), getlimitedvaluestring(), langipcputlistitem(), openscriptcomponent(), and valuetodescriptor().

Here is the call graph for this function:

static boolean findnamedparam hdltreenode  hnames,
bigstring  bsname
[static]
 

Definition at line 975 of file langipc.c.

References assignlocalop, bigstring, equalidentifiers(), langgetidentifier(), tytreenode::link, and nil.

Referenced by langipcbuildparamlist().

Here is the call graph for this function:

static boolean getbinarylistdesc boolean  flrecord,
tyvaluerecord  val,
AEDescList listdesc
[static]
 

Definition at line 2261 of file langipc.c.

References badipclistvalerror, binarytodesc(), binaryvaluetype, copydatahandle(), disposehandle(), langerror(), langipcconvertoplist(), longvaluetype, nil, novaluetype, oserror(), stealbinaryhandle(), typeAERecord, and tyvaluerecord::valuetype.

Referenced by langipccountlistitems(), langipcgetlistitem(), and langipcputlistitem().

Here is the call graph for this function:

static boolean getipcaddressvalue hdltreenode  hparam1,
short  pnum,
tyipcaddress ipcaddress
[static]
 

Definition at line 1894 of file langipc.c.

References addressvaluetype, tyipcaddress::appid, bigstring, tyvaluedata::binaryvalue, binaryvaluetype, coercetoostype(), copystring(), tyvaluerecord::data, dbnotopenederror, tyvaluedata::filespecvalue, filespecvaluetype, findrunningapplication(), getbinarytypeid(), getparamvalue(), iacaddresserror, landgeterror(), landgetglobals(), landstring2networkaddress(), lang2paramerror(), langgetstringlist(), langipcexpandnetaddress(), langparamerror(), loadfromhandle(), nil, onthismacstring, onthisnetstring, tyvaluedata::ostypevalue, shellfindfilewindow(), sizeof(), stringfindchar(), stringlength, tyvaluedata::stringvalue, stringvaluetype, texthandletostring(), and tyvaluerecord::valuetype.

Referenced by langipcbuildmessage().

Here is the call graph for this function:

static boolean getlistpositionvalue hdltreenode  hparam1,
short  pnum,
tyvaluerecord posval
[static]
 

Definition at line 2044 of file langipc.c.

References coercetolistposition(), getparamvalue(), and v.

Referenced by langipcgetlistitem(), and langipcputlistitem().

Here is the call graph for this function:

static boolean getnetaddress hdlhashtable  htable,
bigstring  bsvarname,
tyipcaddress ipcaddress
[static]
 

Definition at line 1817 of file langipc.c.

References tyvaluedata::binaryvalue, binaryvaluetype, tyvaluerecord::data, getbinarytypeid(), hashtablelookup(), hnode, loadfromhandle(), sizeof(), and tyvaluerecord::valuetype.

Referenced by langipcbrowsenetwork().

Here is the call graph for this function:

static boolean getpackedobject Handle  htext,
Handle hpacked
[static]
 

Definition at line 4159 of file langipc.c.

References bigstring, getaddressvalue(), hnode, langpackvalue(), langsymbolreference(), setheapvalue(), stringtoaddress(), and stringvaluetype.

Referenced by langipcfastgetobject().

Here is the call graph for this function:

static boolean handlerexpectsnames hdltreenode  hcode,
AERecord event,
hdltreenode hparams
[static]
 

Definition at line 891 of file langipc.c.

References assignlocalop, bigstring, hcode, isosascriptnode(), kernelop, key, langgetidentifier(), tytreenode::link, moduleop, nil, tytreenode::param1, tytreenode::param2, procop, stringlength, and stringtoostype().

Referenced by langipcbuildparamlist().

Here is the call graph for this function:

static pascal OSErr handleshowmenunode const AppleEvent event,
AppleEvent reply,
long  refcon
[static]
 

Definition at line 3999 of file langipc.c.

References hnode, langipcself, meshownode(), noErr, oppopoutline(), oppushoutline(), and typeLongInteger.

Referenced by langipcstart().

Here is the call graph for this function:

static pascal OSErr handleyield const AppleEvent event,
AppleEvent reply,
long  refcon
[static]
 

Definition at line 4079 of file langipc.c.

References noErr, and processyield().

Referenced by langipcstart().

Here is the call graph for this function:

static boolean iskernelverb hdlverbrecord  hverb  )  [static]
 

Definition at line 883 of file langipc.c.

References issubroutineverb().

Referenced by langipcfindtraphandler(), and langipchandletrapverb().

Here is the call graph for this function:

static boolean issubroutineverb hdlverbrecord  hverb  )  [static]
 

Definition at line 875 of file langipc.c.

Referenced by iskernelverb(), langipcbuildparamlist(), and langipcfindtraphandler().

static pascal boolean langipcbreakembrace EventRecord ev  )  [static]
 

Definition at line 4088 of file langipc.c.

References landefaultbreakembrace(), shellblockevents(), shellpopevents(), and shellprocessevent().

Referenced by langipcstart().

Here is the call graph for this function:

boolean langipcbrowsenetwork hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 1836 of file langipc.c.

References bigstring, clearbytes(), flnextparamislast, getnetaddress(), getostypevalue(), getstringvalue(), getvarparam(), landbrowsenetworkapps(), landgeterror(), langgetparamcount(), newfilledhandle(), setbinarysymbolval(), setbooleanvalue(), setemptystring, and sizeof().

Referenced by sysfunctionvalue().

Here is the call graph for this function:

static boolean langipcbuildmessage hdltreenode  hparam1,
short  paramnum,
tyipcmessageflags  msgflags,
tyipcaddress ipcadr,
hdlverbrecord hverb
[static]
 

Definition at line 2769 of file langipc.c.

References tyvaluedata::addressvalue, tyipcaddress::appid, tyipcaddress::appname, appnotloadederror, tyipcaddress::appprocessid, clearbytes(), coercetoostype(), tyvaluerecord::data, error, exemptfromtmpstack(), tyvaluedata::filespecvalue, findrunningapplication(), tyipcaddress::flcodeval, flinhibitnilcoercion, fllangerror, tyipcaddress::flnetwork, flparamerrorenabled, tyipcaddress::flrootval, fltoolkitinitialized, tyverbrecord::flverbisdirect, getipcaddressvalue(), getlongvalue(), getostypevalue(), getparamvalue(), HNoNode, iactoolkitnotintializederror, landdisposeverb(), landgetglobals(), landnewnetworkverb(), landnewverb(), landsetverbattr(), langerror(), langexternalvaltotable(), langipcgetparamvisit(), langipcpushparam(), langipcpushrecordparams(), langostypeparamerror(), long, microsoftmsg, tyipcaddress::netaddress, nil, tyvaluedata::ostypevalue, systemmsg, tablesortedinversesearch(), transactionmsg, typeFSS, and tyipcaddress::val.

Referenced by langipccomplexmessage(), langipcmessage(), and langipctablemessage().

Here is the call graph for this function:

boolean langipcbuildparamlist hdltreenode  hcode,
hdlverbrecord  hverb,
hdltreenode hparams
 

Definition at line 1005 of file langipc.c.

References currenthashtable, typaramrecord::desc, exemptfromtmpstack(), findnamedparam(), fl, handlerexpectsnames(), hcode, i, issubroutineverb(), typaramrecord::key, keyDirectObject, landsystem7geteventrecords(), landsystem7getnthparam(), langdisposetree(), langipccoerceparam(), newconstnode(), nil, oserror(), ostypetostring(), pushhashtable(), roottable, and typeAEList.

Referenced by langipchandletrapverb(), and osahandletrapverb().

Here is the call graph for this function:

boolean langipcbuildsubroutineevent AppleEvent event,
bigstring  bsname,
hdltreenode  hparam1
 

Definition at line 3514 of file langipc.c.

References tyvaluerecord::data, evaluatetree(), fieldop, hnode, key, langgetidentifier(), langgetsymbolval(), tytreenode::link, nil, noErr, tyvaluedata::ostypevalue, ostypevaluetype, stringlength, stringtoostype(), typeChar, typeNull, valuetodescriptor(), and tyvaluerecord::valuetype.

Referenced by langipchandlercall(), langipckernelfunction(), and osabuildsubroutineevent().

Here is the call graph for this function:

boolean langipccoerceappleitem hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2664 of file langipc.c.

References flnextparamislast, getostypevalue(), getparamvalue(), oserror(), setbooleanvalue(), setdescriptorvalue(), and valuetodescriptor().

Referenced by langfunctionvalue().

Here is the call graph for this function:

static boolean langipccoerceparam AEDesc param,
tyvaluerecord vreturned
[static]
 

Definition at line 401 of file langipc.c.

References addressvaluetype, aliasvaluetype, assert, bigstring, binaryvaluetype, booleanvaluetype, charvaluetype, copydatahandle(), copyheapstring(), datevaluetype, tyAEDesc::descriptorType, directionvaluetype, disposehandle(), doublevaluetype, filespecvaluetype, fixedvaluetype, fl, gethandlesize(), initvalue(), intvaluetype, langgetvaluetype(), langipcconvertaelist(), longvaluetype, nil, novaluetype, numberfromhandle(), objspecvaluetype, oserror(), ostypevaluetype, pathtype, patternvaluetype, pointvaluetype, pullfromhandle(), rectvaluetype, rgbvaluetype, setbinaryvalue(), setbooleanvalue(), setdoublevalue(), setheapvalue(), setstringvalue(), singlevaluetype, stringtype, stringvaluetype, typeExtended, typeFalse, typeIntlText, typeLongFloat, typeNull, typeTrue, and v.

Referenced by langipcbuildparamlist(), langipccomplexsend(), langipcmessage(), and setdescriptorvalue().

Here is the call graph for this function:

boolean langipccomplexmessage hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 3338 of file langipc.c.

References langipcbuildmessage(), langipccomplexsend(), langipcggettableparam(), and normalmsg.

Referenced by builtinvalue().

Here is the call graph for this function:

static boolean langipccomplexsend hdlverbrecord  hverb,
tyipcaddress ipcaddress,
hdlhashtable  htable
[static]
 

Definition at line 3229 of file langipc.c.

References appnotloadederror, bigstring, exemptfromtmpstack(), hashassign(), i, ipcappleerror, landcomplexsend(), landgeterror(), landgetnthparam(), langipccoerceparam(), langipcerrormessage(), nil, oserror(), ostypetostring(), pushhashtable(), and usercancellederror.

Referenced by langipccomplexmessage(), and langipctablemessage().

Here is the call graph for this function:

boolean langipcconvertaelist const AEDesc list,
tyvaluerecord vlist
 

Definition at line 2114 of file langipc.c.

References bigstring, disposevaluerecord(), error, key, langpushlistval(), nil, opnewlist(), oserror(), ostypetostring(), setdescriptorvalue(), typeAERecord, and typeWildCard.

Referenced by coercetolist(), equaldescriptors(), hashunpacktable(), and langipccoerceparam().

Here is the call graph for this function:

boolean langipcconvertoplist const tyvaluerecord vlist,
AEDesc list
 

Definition at line 2061 of file langipc.c.

References bigstring, error, key, langgetlistitem(), langgetlistsize(), nil, oserror(), stringtoostype(), and valuetodescriptor().

Referenced by getbinarylistdesc(), langipcpushparam(), valtoobjspec(), and valuetodescriptor().

Here is the call graph for this function:

boolean langipccountlistitems hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2533 of file langipc.c.

References bigstring, flnextparamislast, getbinarylistdesc(), getvarvalue(), hnode, oserror(), and setlongvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

static void langipcerrormessage short  iderror,
tyipcaddress ipcaddress,
bigstring  bsparam,
short  idoserr
[static]
 

Definition at line 3064 of file langipc.c.

References appwhoseidstring, bigstring, copystring(), getsystemerrorstring(), isemptystring, lang3paramerror(), langerrormessage(), langgetmiscstring(), langgetstringlist(), langipcfindapptable(), nil, ostypetostring(), parsedialogstring(), setemptystring, and unknownstring.

Referenced by langipccomplexsend(), and langipcmessage().

Here is the call graph for this function:

boolean langipcerrorroutine bigstring  bs,
ptrvoid  refcon
 

Definition at line 141 of file langipc.c.

References currentprocess, errornumberkey, errorstringkey, hipcverb, idscriptcompleted, landpushintparam(), landpushstringparam(), landstartreturn(), and nil.

Referenced by langipchookerrors(), langipcruncode(), and langipcrunitem().

Here is the call graph for this function:

static boolean langipceventhook EventRecord ev,
WindowPtr  w
[static]
 

Definition at line 4687 of file langipc.c.

References fltoolkitinitialized, and landeventfilter().

Referenced by langipcinit().

Here is the call graph for this function:

static void langipcexpandnetaddress tyipcaddress ipcaddress  )  [static]
 

Definition at line 1798 of file langipc.c.

References copystring(), tyipcaddress::flnetwork, moveleft(), and sizeof().

Referenced by getipcaddressvalue().

Here is the call graph for this function:

static boolean langipcfasterror bigstring  bs,
ptrvoid  refcon
[static]
 

Definition at line 3394 of file langipc.c.

References fastreply, getoserror(), noErr, stringlength, typeChar, and typeLongInteger.

Referenced by langipchookfasterrors().

Here is the call graph for this function:

static pascal OSErr langipcfastgetobject AppleEvent event,
AppleEvent reply,
long  refcon
[static]
 

Definition at line 4226 of file langipc.c.

References copydatahandle(), data, tyAEDesc::dataHandle, tyAEDesc::descriptorType, disposehandle(), getpackedobject(), landpopfastcontext(), landpushfastcontext(), langipchookfasterrors(), langipcunhookfasterrors(), newdescwithhandle(), noErr, oserror(), RestoreA5, SetUpAppA5, and typeChar.

Referenced by langipcinstallfastscript().

Here is the call graph for this function:

static pascal OSErr langipcfastsetobject AppleEvent event,
AppleEvent reply,
long  refcon
[static]
 

Definition at line 4304 of file langipc.c.

References copydatahandle(), data, tyAEDesc::dataHandle, keyDirectObject, landpopfastcontext(), landpushfastcontext(), langipchookfasterrors(), langipcunhookfasterrors(), noErr, oserror(), RestoreA5, setpackedobject(), SetUpAppA5, typeBoolean, and typeChar.

Referenced by langipcinstallfastscript().

Here is the call graph for this function:

static boolean langipcfileopen hdlverbrecord  hverb  )  [static]
 

Definition at line 743 of file langipc.c.

References landnofileopenerror, landreturnerror(), nil, and roottable.

Referenced by langipchandlerunscript(), and langipchandletrapverb().

Here is the call graph for this function:

boolean langipcfindapptable OSType  appsignature,
boolean  fluseinfoname,
hdlhashtable happtable,
bigstring  bsname
 

Definition at line 3031 of file langipc.c.

References appvisitinfo::apptablefound, apptablevisit(), appvisitinfo::fluseappinfoname, hashinversesearch(), iacgluetable, appvisitinfo::idlookfor, isemptystring, nil, and setemptystring.

Referenced by handlerecordableevent(), and langipcerrormessage().

Here is the call graph for this function:

static pascal boolean langipcfindhandler hdlverbrecord  hverb  )  [static]
 

Definition at line 1761 of file langipc.c.

References tyvaluedata::addressvalue, tyvaluerecord::data, langipcfindtraphandler(), long, and return().

Referenced by langipcstart().

Here is the call graph for this function:

static boolean langipcfindtraphandler hdlverbrecord  hverb,
tyvaluerecord adr
[static]
 

Definition at line 1159 of file langipc.c.

References bigstring, disablelangerror(), enablelangerror(), exemptfromtmpstack(), fl, hashtablelookup(), hnode, iachandlertable, iskernelverb(), issubroutineverb(), keykerneltable, landgetlongparam(), landgetstringparam(), landpushstringparam(), langexpandtodotparams(), langexternalvaltotable(), langipcvalhascode(), langparamerror(), langsearchpathlookup(), nil, notfunctionerror, ostypetostring(), poptrailingwhitespace(), and setaddressvalue().

Referenced by langipcfindhandler(), and langipchandletrapverb().

Here is the call graph for this function:

boolean langipcgetaddressvalue hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2037 of file langipc.c.

References setbooleanvalue().

Here is the call graph for this function:

static boolean langipcgeterrorstring const AppleEvent reply,
bigstring  bserror
[static]
 

Definition at line 3489 of file langipc.c.

References datahandletostring(), noErr, texthandletostring(), and typeChar.

Referenced by langipchandlercall(), and langipckernelfunction().

Here is the call graph for this function:

boolean langipcgeteventattr hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2626 of file langipc.c.

References bsfunctionname, currentprocess, error, flnextparamislast, getostypevalue(), landgetverbattr(), langparamerror(), nil, oserror(), setbooleanvalue(), setdescriptorvalue(), trapnotrunningerror, and typeWildCard.

Referenced by langfunctionvalue().

Here is the call graph for this function:

boolean langipcgetlistitem hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2445 of file langipc.c.

References bigstring, binaryrequirederror, coercetoostype(), exemptfromtmpstack(), flnextparamislast, getbinarylistdesc(), getbinaryparam(), getlistpositionvalue(), getvarparam(), isemptystring, key, langerror(), langsetsymboltableval(), oserror(), ostypevaluetype, setbooleanvalue(), setdescriptorvalue(), stringvaluetype, typeWildCard, and tyvaluerecord::valuetype.

Referenced by langfunctionvalue().

Here is the call graph for this function:

static boolean langipcgetparamvisit bigstring  bs,
hdlhashnode  hnode,
tyvaluerecord  val,
ptrvoid  refcon
[static]
 

Definition at line 2715 of file langipc.c.

References copyvaluerecord(), key, langipcpushparam(), langparamerror(), ostypecoerceerror, and stringtoostype().

Referenced by langipcbuildmessage(), and langipctablemessage().

Here is the call graph for this function:

static boolean langipcggettableparam hdltreenode  hparam1,
short  pnum,
boolean  flcreate,
hdlhashtable htableparam
[static]
 

Definition at line 3300 of file langipc.c.

References assert, bigstring, bserror, getstringlist(), getvarparam(), langerrormessage(), langexternalgettable(), namenottableerror, nil, pophashtable(), pushhashtable(), tableerrorlist, and tablenewsubtable().

Referenced by langipccomplexmessage(), and langipctablemessage().

Here is the call graph for this function:

static pascal OSErr langipchandlefastscript AppleEvent event,
AppleEvent reply,
long  refcon
[static]
 

Definition at line 4387 of file langipc.c.

References bigstring, cleartmpstack(), copydatahandle(), tyAEDesc::dataHandle, fldisableyield, flscriptrunning, landpopfastcontext(), landpushfastcontext(), langipchookfasterrors(), langipcunhookfasterrors(), langrunhandle(), noErr, osacomponent, oserror(), pophashtable(), pushhashtable(), RestoreA5, roottable, setemptystring, SetUpThisA5, stringlength, and typeChar.

Referenced by langipcinstallfastscript().

Here is the call graph for this function:

boolean langipchandlercall hdltreenode  htree,
bigstring  bsverb,
hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 3605 of file langipc.c.

References bigstring, bracketop, identifierop, iscurrentapplication(), langerrormessage(), langipcbuildsubroutineevent(), langipcgeterrorstring(), langipcnewevent(), langipcself, langipcsendevent(), nil, noErr, oserror(), setbooleanvalue(), setdescriptorvalue(), typeNull, and typeWildCard.

Referenced by langhandlercall().

Here is the call graph for this function:

static boolean langipchandlerunscript hdlverbrecord  hverb  )  [static]
 

Definition at line 838 of file langipc.c.

References fl, hcode, idscriptvalue, landgettextparam(), langbuildtree(), langipcfileopen(), langipchookerrors(), langipcruncode(), langipcunhookerrors(), and nil.

Referenced by langipchandleverb().

Here is the call graph for this function:

static boolean langipchandletrapverb hdlverbrecord  hverb,
boolean flfoundhandler
[static]
 

Definition at line 1314 of file langipc.c.

References tyvaluedata::addressvalue, addressvaluetype, bigstring, tyvaluedata::binaryvalue, binaryvaluetype, tyvaluerecord::data, disposehandle(), evaluateosascriptevent(), fl, getaddressvalue(), h, hashtablelookupnode(), hcode, initvalue(), iskernelverb(), isosascriptnode(), keycurrenttable, landgetlongparam(), landsystem7geteventrecords(), langcompilescript(), langdisposetree(), langerrormessage(), langexternalvaltocode(), langipcbuildparamlist(), langipcfileopen(), langipcfindtraphandler(), langipchookerrors(), langipcruncode(), langipcunhookerrors(), loadhandleremains(), lockhandle(), moduleop, nil, oserror(), pophashtable(), pushbinaryoperation(), pushfunctioncall(), pushfunctionreference(), pushhashtable(), pushvalueontmpstack(), unlockhandle(), and tyvaluerecord::valuetype.

Referenced by langipchandleverb().

Here is the call graph for this function:

static pascal boolean langipchandleverb hdlverbrecord  hverb  )  [static]
 

Definition at line 1629 of file langipc.c.

References copydatahandle(), tyAEDesc::dataHandle, disposehandle(), getmenuarraytoken, getmenuhandletoken, getoserror(), idrunmenuitem, idrunning, idwho, iswho, killscripttoken, landgeterror(), landgetverbattr(), landreturnboolean(), landreturnerror(), landreturnlong(), landseterror(), langipchandlerunscript(), langipchandletrapverb(), nil, noErr, oserror(), runscripttoken, tyshellglobals::setsuperglobalsroutine, shellfindfilewindow(), shellglobals, shellpopglobals(), shellpushglobals(), typeFSS, and undefinedverberror.

Referenced by langipcstart().

Here is the call graph for this function:

static void langipchookerrors hdlverbrecord  hverb,
callback savecallback
[static]
 

Definition at line 188 of file langipc.c.

References tylangcallbacks::errormessagecallback, hipcverb, langcallbacks, langipcerrorroutine(), and shellpusherrorhook().

Referenced by langipchandlerunscript(), and langipchandletrapverb().

Here is the call graph for this function:

static void langipchookfasterrors AEDesc reply  )  [static]
 

Definition at line 3413 of file langipc.c.

References tylangcallbacks::errormessagecallback, fastreply, langcallbacks, langipcfasterror(), and shellpusherrorhook().

Referenced by langipcfastgetobject(), langipcfastsetobject(), and langipchandlefastscript().

Here is the call graph for this function:

boolean langipcinit void   ) 
 

Definition at line 4702 of file langipc.c.

References langipceventhook(), RememberA5, and shellpusheventhook().

Here is the call graph for this function:

static boolean langipcinstallfastscript void   )  [static]
 

Definition at line 4509 of file langipc.c.

References landsystem7installfasthandler(), langipcfastgetobject(), langipcfastsetobject(), langipchandlefastscript(), and langipcresfile.

Referenced by langipcstart().

Here is the call graph for this function:

boolean langipckernelfunction hdlhashtable  htable,
bigstring  bsverb,
hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 3757 of file langipc.c.

References bigstring, currenthashtable, keycurrenttable, keykerneltable, langerrormessage(), langipcbuildsubroutineevent(), langipcgeterrorstring(), langipcsendevent(), newselfaddressedevent(), nil, noErr, oserror(), setdescriptorvalue(), setnilvalue(), typeLongInteger, typeNull, and typeWildCard.

Referenced by kernelfunctionvalue().

Here is the call graph for this function:

boolean langipcmessage hdltreenode  hparam1,
tyipcmessageflags  msgflags,
tyvaluerecord vreturned
 

Definition at line 3124 of file langipc.c.

References appnotloadederror, bigstring, bserror, typaramrecord::desc, tyAEDesc::descriptorType, ipcappleerror, ipcerror, isemptystring, landgeterror(), landsendverb(), landverbgetsnoreply(), langipcbuildmessage(), langipccoerceparam(), langipcerrormessage(), nil, noreplymsg, oserror(), setbooleanvalue(), and usercancellederror.

Referenced by builtinvalue(), and langfunctionvalue().

Here is the call graph for this function:

static boolean langipcnewevent ProcessSerialNumber psn,
AEEventClass  class,
AEEventID  id,
AppleEvent event
[static]
 

Definition at line 3439 of file langipc.c.

References oserror(), and typeProcessSerialNumber.

Referenced by langipchandlercall(), and newselfaddressedevent().

Here is the call graph for this function:

boolean langipcnoop void   ) 
 

Definition at line 4062 of file langipc.c.

References langipcsendevent(), newselfaddressedevent(), and noop.

Referenced by osapartialeventloop().

Here is the call graph for this function:

static pascal OSErr langipcopenapproutine void   )  [static]
 

Definition at line 4125 of file langipc.c.

References getoserror(), noErr, and shellopendefaultfile().

Referenced by langipcstart().

Here is the call graph for this function:

static pascal OSErr langipcopendocroutine FSSpec fs  )  [static]
 

Definition at line 4134 of file langipc.c.

References getoserror(), noErr, and shellopenfile().

Referenced by langipcstart().

Here is the call graph for this function:

static boolean langipcprocessstarted void   )  [static]
 

Definition at line 766 of file langipc.c.

References processnotbusy().

Referenced by langipcruncode().

Here is the call graph for this function:

boolean langipcpushparam tyvaluerecord valparam,
typaramkeyword  key,
hdlverbrecord  hverb
 

Definition at line 214 of file langipc.c.

References addressvaluetype, aliasvaluetype, badoutgoingipctypeerror, bigstring, binaryvaluetype, bitboolean, booleanvaluetype, charvaluetype, copydatahandle(), copyvaluedata(), tyAEDesc::dataHandle, datevaluetype, directionvaluetype, disposevaluerecord(), doublevaluetype, exemptfromtmpstack(), filespecvaluetype, fixedvaluetype, getaddresspath(), initvalue(), intvaluetype, landpushparam(), langerror(), langgettypeid(), langipcconvertoplist(), longvaluetype, nil, novaluetype, objspecvaluetype, ostypevaluetype, patternvaluetype, pointvaluetype, pullfromhandle(), rectvaluetype, rgbvaluetype, setnilvalue(), singlevaluetype, stringlength, stringvaluetype, typeNull, and v.

Referenced by langipcbuildmessage(), langipcgetparamvisit(), langipcpushrecordparams(), langipcruncode(), and osaDoEvent().

Here is the call graph for this function:

static boolean langipcpushrecordparams const tyvaluerecord vrecord,
hdlverbrecord  hverb
[static]
 

Definition at line 2735 of file langipc.c.

References bigstring, disposevaluerecord(), key, langgetlistitem(), langgetlistsize(), langipcpushparam(), and stringtoostype().

Referenced by langipcbuildmessage().

Here is the call graph for this function:

boolean langipcputlistitem hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2332 of file langipc.c.

References bigstring, binaryrequirederror, binarytodesc(), tyvaluedata::binaryvalue, coercetoostype(), copydatahandle(), tyvaluerecord::data, tyAEDesc::dataHandle, tyAEDesc::descriptorType, flnextparamislast, getbinarylistdesc(), getbinaryparam(), getlistpositionvalue(), getvarparam(), hashtablelookup(), hnode, isemptystring, langerror(), nil, oserror(), ostypevaluetype, setbinarysymbolval(), setbooleanvalue(), stringvaluetype, and tyvaluerecord::valuetype.

Referenced by langfunctionvalue().

Here is the call graph for this function:

static pascal OSErr langipcquitapproutine void   )  [static]
 

Definition at line 4143 of file langipc.c.

References noErr, shellcloseall(), and shellexitmaineventloop().

Referenced by langipcstart().

Here is the call graph for this function:

static void langipcremovefastscript void   )  [static]
 

Definition at line 4543 of file langipc.c.

References landsystem7removefasthandler().

Referenced by langipcshutdown().

Here is the call graph for this function:

static boolean langipcruncode hdlverbrecord  hverb,
hdltreenode  hcode,
hdlhashtable  hcontext,
boolean  flstringresult
[static]
 

Definition at line 779 of file langipc.c.

References coercetostring(), disposeprocess(), disposetmpvalue(), exemptfromtmpstack(), fl, hcode, landstartreturn(), langdisposetree(), langipcerrorroutine(), langipcprocessstarted(), langipcpushparam(), long, newprocess(), nil, typrocessrecord::processrefcon, processruncode(), and returnedvaluekey.

Referenced by langipchandlerunscript(), and langipchandletrapverb().

Here is the call graph for this function:

static OSErr langipcsendevent AppleEvent event,
AppleEvent reply
[static]
 

Definition at line 3472 of file langipc.c.

References landgetglobals(), and nil.

Referenced by langipchandlercall(), langipckernelfunction(), langipcnoop(), and langipcshowmenunode().

Here is the call graph for this function:

boolean langipcsetinteractionlevel hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2607 of file langipc.c.

References flnextparamislast, getintvalue(), landsetinteractionlevel(), and setbooleanvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

boolean langipcsettimeout hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2569 of file langipc.c.

References flnextparamislast, getlongvalue(), landsettimeout(), and setbooleanvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

boolean langipcsettransactionid hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2588 of file langipc.c.

References flnextparamislast, getlongvalue(), landsettransactionid(), and setbooleanvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

boolean langipcshowmenunode long  hnode  ) 
 

Definition at line 4033 of file langipc.c.

References langipcsendevent(), newselfaddressedevent(), noErr, oserror(), outlinedata, and typeLongInteger.

Referenced by langipcgetitemlangtext().

Here is the call graph for this function:

void langipcshutdown void   ) 
 

Definition at line 4658 of file langipc.c.

References landclose(), langipcremovefastscript(), and uisClose().

Here is the call graph for this function:

boolean langipcstart void   ) 
 

Definition at line 4559 of file langipc.c.

References fltoolkitinitialized, getmenuarraytoken, getmenuhandletoken, handleshowmenunode(), handleyield(), idrunmenuitem, idwho, killscripttoken, landacceptanyverb(), landaddfastverb(), landaddverb(), landgetglobals(), landinit(), landsystem7defaultcreate(), landsystem7defaultsend(), langerrorlist, langipcbreakembrace(), langipcfindhandler(), langipchandleverb(), langipcinstallfastscript(), langipcmenuinit(), langipcopenapproutine(), langipcopendocroutine(), langipcquitapproutine(), langipcself, runscripttoken, tyWindowSharingGlobals::windowserver, and wsGlobals.

Here is the call graph for this function:

boolean langipctablemessage hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 3355 of file langipc.c.

References landdisposeverb(), langipcbuildmessage(), langipccomplexsend(), langipcgetparamvisit(), langipcggettableparam(), normalmsg, and tablesortedinversesearch().

Referenced by builtinvalue().

Here is the call graph for this function:

static boolean langipcunhookerrors callback  savecallback  )  [static]
 

Definition at line 200 of file langipc.c.

References tylangcallbacks::errormessagecallback, fllangerror, hipcverb, langcallbacks, nil, and shellpoperrorhook().

Referenced by langipchandlerunscript(), and langipchandletrapverb().

Here is the call graph for this function:

static boolean langipcunhookfasterrors void   )  [static]
 

Definition at line 3425 of file langipc.c.

References tylangcallbacks::errormessagecallback, fllangerror, langcallbacks, noErr, oserror(), and shellpoperrorhook().

Referenced by langipcfastgetobject(), langipcfastsetobject(), and langipchandlefastscript().

Here is the call graph for this function:

static boolean langipcvalhascode const tyvaluerecord val  )  [static]
 

Definition at line 1136 of file langipc.c.

References binaryvaluetype, externalvaluetype, hcode, langexternalvaltocode(), and v.

Referenced by langipcfindtraphandler().

Here is the call graph for this function:

boolean newselfaddressedevent AEEventID  id,
AppleEvent event
 

Definition at line 3457 of file langipc.c.

References iscurrentapplication(), langipcnewevent(), and langipcself.

Referenced by langipckernelfunction(), langipcnoop(), and langipcshowmenunode().

Here is the call graph for this function:

static boolean setbinarysymbolval hdlhashtable  htable,
bigstring  bs,
Handle  x,
OSType  typeid
[static]
 

Definition at line 1778 of file langipc.c.

References exemptfromtmpstack(), langsetsymboltableval(), and setbinaryvalue().

Referenced by langipcbrowsenetwork(), and langipcputlistitem().

Here is the call graph for this function:

boolean setdescriptorvalue AEDesc  desc,
tyvaluerecord val
 

Definition at line 649 of file langipc.c.

References langipccoerceparam().

Referenced by coerceInsltoTEXT(), evaluateosascript(), getlimitedvaluestring(), getnthlistval(), getverbresult(), langipccoerceappleitem(), langipcconvertaelist(), langipcgeteventattr(), langipcgetlistitem(), langipchandlercall(), langipckernelfunction(), listarrayvalue(), listtostring(), objspectofilespec(), objtostring(), osaCoerceFromDesc(), and pusheventparameter().

Here is the call graph for this function:

static boolean setpackedobject Handle  htext,
Handle  hpacked
[static]
 

Definition at line 4190 of file langipc.c.

References bigstring, disposehandle(), getaddressvalue(), langsetsymboltableval(), langunpackvalue(), setheapvalue(), stringtoaddress(), and stringvaluetype.

Referenced by langipcfastsetobject().

Here is the call graph for this function:

static boolean stealbinaryhandle tyvaluerecord val,
Handle x
[static]
 

Definition at line 2248 of file langipc.c.

References copyhandle(), and exemptfromtmpstack().

Referenced by getbinarylistdesc().

Here is the call graph for this function:

boolean valuetodescriptor tyvaluerecord val,
AEDesc desc
 

Definition at line 667 of file langipc.c.

References addressvaluetype, bigstring, binarytodesc(), coercetobinary(), disposevaluerecord(), exemptfromtmpstack(), fl, getaddresspath(), langgettypeid(), langipcconvertoplist(), newdescnull(), nil, novaluetype, oserror(), setnilvalue(), stringlength, and typeNull.

Referenced by coercelistcontents(), evaluatecomparison(), evaluatefield(), langipcbuildsubroutineevent(), langipccoerceappleitem(), langipcconvertoplist(), listassignvalue(), makelistvalue(), osaDebug(), setobjspecverb(), and storagevaltodesc().

Here is the call graph for this function:


Variable Documentation

AEDesc* fastreply [static]
 

Definition at line 3389 of file langipc.c.

Referenced by langipcfasterror(), and langipchookfasterrors().

langerrormessagecallback fastsavecallback [static]
 

Definition at line 3391 of file langipc.c.

boolean fltoolkitinitialized = false [static]
 

Definition at line 125 of file langipc.c.

Referenced by langipcbuildmessage(), langipceventhook(), and langipcstart().

hdlverbrecord hipcverb = nil [static]
 

Definition at line 127 of file langipc.c.

Referenced by langipcerrorroutine(), langipchookerrors(), and langipcunhookerrors().

short langipcresfile [static]
 

Definition at line 137 of file langipc.c.

Referenced by langipcinstallfastscript().

typrocessid langipcself
 

Definition at line 123 of file langipc.c.


Generated on Sun Jun 4 04:31:15 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6