langdll.c File Reference

#include "frontier.h"
#include "standard.h"
#include "memory.h"
#include "frontierconfig.h"
#include "cursor.h"
#include "dialogs.h"
#include "error.h"
#include "file.h"
#include "font.h"
#include "kb.h"
#include "mouse.h"
#include "ops.h"
#include "quickdraw.h"
#include "resources.h"
#include "sounds.h"
#include "strings.h"
#include "frontierwindows.h"
#include "cancoon.h"
#include "shell.h"
#include "shellhooks.h"
#include "lang.h"
#include "langinternal.h"
#include "langexternal.h"
#include "langipc.h"
#include "langsystem7.h"
#include "langtokens.h"
#include "oplist.h"
#include "BASE64.H"
#include "tablestructure.h"
#include "tableverbs.h"
#include "process.h"
#include "processinternal.h"
#include "kernelverbdefs.h"
#include "langdll.h"

Include dependency graph for langdll.c:

Go to the source code of this file.

Data Structures

struct  typrocinfostruct
struct  tydllinfostruct

Defines

#define NEW_DLL_INTERFACE   1
#define ctprocinfohashbuckets   29

Typedefs

typedef typrocinfostructtyprocinfoptr
typedef typrocinfostruct ** typrocinfohandle
typedef tydllinfostructtydllinfoptr
typedef tydllinfostruct ** tydllinfohandle

Functions

pascal boolean odbUpdateOdbref (WindowPtr w, odbRef odb)
boolean odbnewfile (hdlfilenum fnum)
boolean odbaccesswindow (WindowPtr w, odbRef *odb)
boolean odbopenfile (hdlfilenum fnum, odbRef *odb, boolean flreadonly)
boolean odbsavefile (odbRef odb)
boolean odbclosefile (odbRef odb)
boolean odbdefined (odbRef odb, bigstring bspath)
boolean odbdelete (odbRef odb, bigstring bspath)
boolean odbgettype (odbRef odb, bigstring bspath, OSType *odbType)
boolean odbgetvalue (odbRef odb, bigstring bspath, odbValueRecord *value)
boolean odbsetvalue (odbRef odb, bigstring bspath, odbValueRecord *value)
boolean odbnewtable (odbRef odb, bigstring bspath)
boolean odbcountitems (odbRef odb, bigstring bspath, long *count)
boolean odbgetnthitem (odbRef odb, bigstring bspath, long n, bigstring bsname)
boolean odbgetmoddate (odbRef odb, bigstring bspath, unsigned long *date)
boolean odbdisposevalue (odbRef odb, odbValueRecord *value)
pascal void odbGetError (bigstring bs)
Handle xCALLBACK extfrontierReAlloc (Handle h, long sz)
Handle xCALLBACK extfrontierAlloc (long sz)
char *xCALLBACK extfrontierLock (Handle h)
void xCALLBACK extfrontierFree (Handle h)
long xCALLBACK extfrontierSize (Handle h)
void xCALLBACK extfrontierUnlock (Handle h)
static boolean convertodbtotyval (odbValueRecord *odbval, tyvaluerecord *val)
static boolean converttyvaltoodb (tyvaluerecord *val, odbValueRecord *odbval)
odbBool xCALLBACK extOdbNewListValue (odbRef odb, odbValueRecord *value, odbBool flRecord)
odbBool xCALLBACK extOdbGetListCount (odbRef odb, odbValueRecord *value, long *cnt)
odbBool xCALLBACK extOdbDeleteListValue (odbRef odb, odbValueRecord *value, long idx, char *recordname)
odbBool xCALLBACK extOdbSetListValue (odbRef odb, odbValueRecord *value, long idx, char *recordname, odbValueRecord *valueData)
odbBool xCALLBACK extOdbGetListValue (odbRef odb, odbValueRecord *value, long idx, char *recordname, odbValueRecord *valueReturn)
odbBool xCALLBACK extOdbAddListValue (odbRef odb, odbValueRecord *value, char *recordname, odbValueRecord *valueData)
odbRef xCALLBACK extOdbGetCurrentRoot (void)
odbBool xCALLBACK extOdbNewFile (hdlfilenum h)
odbBool xCALLBACK extOdbOpenFile (hdlfilenum h, odbRef *odb)
odbBool xCALLBACK extOdbSaveFile (odbRef odb)
odbBool xCALLBACK extOdbCloseFile (odbRef odb)
odbBool xCALLBACK extOdbDefined (odbRef odb, bigstring bspath)
odbBool xCALLBACK extOdbDelete (odbRef odb, bigstring bspath)
odbBool xCALLBACK extOdbGetType (odbRef odb, bigstring bspath, OSType *type)
odbBool xCALLBACK extOdbCountItems (odbRef odb, bigstring bspath, long *count)
odbBool xCALLBACK extOdbGetNthItem (odbRef odb, bigstring bspath, long n, bigstring bsname)
odbBool xCALLBACK extOdbGetValue (odbRef odb, bigstring bspath, odbValueRecord *value)
odbBool xCALLBACK extOdbSetValue (odbRef odb, bigstring bspath, odbValueRecord *value)
odbBool xCALLBACK extOdbNewTable (odbRef odb, bigstring bspath)
odbBool xCALLBACK extOdbGetModDate (odbRef odb, bigstring bspath, unsigned long *date)
void xCALLBACK extOdbDisposeValue (odbRef odb, odbValueRecord *value)
void xCALLBACK extOdbGetError (bigstring bs)
odbBool xCALLBACK extDoScript (char *script, long len, odbValueRecord *value)
odbBool xCALLBACK extDoScriptText (char *script, long len, Handle *text)
odbBool xCALLBACK extInvoke (bigstring bsscriptname, void *pDispParams, odbValueRecord *retval, boolean *flfoundhandler, unsigned int *errarg)
odbBool xCALLBACK extCoerce (odbValueRecord *odbval, odbValueType newtype)
odbBool xCALLBACK extCallScript (odbString bspath, odbValueRecord *vparams, odbValueRecord *value)
odbBool xCALLBACK extCallScriptText (odbString bspath, odbValueRecord *vparams, Handle *text)
odbBool xCALLBACK extThreadYield (void)
odbBool xCALLBACK extThreadSleep (long sleepticks)
static tyvaluetype gettypefromchar (char val)
static unsigned long procnamehashfunction (bigstring bs)
static void addprocinfo (tydllinfohandle hdll, typrocinfohandle hprocinfo)
static boolean locateprocinfo (tydllinfohandle hdll, bigstring bsprocname, typrocinfohandle *hprocinfoptr)
static void freeprocinfobuckets (tydllinfohandle hdll)
static typrocinfohandle newprocinfo (char *pname, long lenname, char *pparams, long lenparams)
static boolean loadprocinforesource (tydllinfohandle hdll)
static void unloadprocinforesource (tydllinfohandle hdll)
static boolean parseprocinforesource (tydllinfohandle hdll, bigstring bsprocname, typrocinfohandle *hprocinfoptr)
static void addlibrary (tydllinfohandle hdll)
static void removelibrary (tydllinfohandle hdll)
static tydllinfohandle getlibrary (const tyfilespec *fs)
static tydllinfohandle newlibrary (const tyfilespec *fs)
static void freelibrary (tydllinfohandle hdll)
static boolean openlibrary (tydllinfohandle hdll)
static void closelibrary (tydllinfohandle hdll)
static tydllinfohandle loadlibrary (const tyfilespec *fs)
static void unloadlibrary (tydllinfohandle hdll)
static boolean initparamblock (hdltreenode hp1, typrocinfohandle hprocinfo, tydllparamblock *params, Handle *orighandles)
static void freeparamblock (typrocinfohandle hprocinfo, Handle *orighandles)
static boolean lookupprocaddress (tydllinfohandle hdll, typrocinfohandle hprocinfo)
static boolean callprocwithparams (tydllinfohandle hdll, typrocinfohandle hprocinfo, tydllparamblock *params, tyvaluerecord *vreturned)
static boolean callproc (hdltreenode hparam1, tydllinfohandle hdll, typrocinfohandle hprocinfo, tyvaluerecord *vreturned)
static boolean callstayresident (hdltreenode hparam1, tydllinfohandle hdll, bigstring bsprocname, tyvaluerecord *vreturned)
static boolean callvolatile (hdltreenode hparam1, const tyfilespec *fs, bigstring bsprocname, tyvaluerecord *vreturned)
static boolean islibraryloaded (const tyfilespec *fs)
static boolean dodllload (const tyfilespec *fs, tydllinfohandle *hdllptr)
static boolean dodllunload (const tyfilespec *fs)
static boolean dodllcall (hdltreenode hparam1, const tyfilespec *fs, bigstring bsprocname, tyvaluerecord *vreturned)
void fillcalltable (XDLLProcTable *pt)
boolean dllisloadedverb (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean dllloadverb (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean dllunloadverb (hdltreenode hparam1, tyvaluerecord *vreturned)
boolean dllcallverb (hdltreenode hparam1, tyvaluerecord *vreturned)
void dllinitverbs (void)

Variables

static tydllinfohandle loadeddlls
static XDLLProcTabledllcallbacks
odbRef globalodb = NULL


Define Documentation

#define ctprocinfohashbuckets   29
 

Definition at line 95 of file langdll.c.

Referenced by freeprocinfobuckets(), and procnamehashfunction().

#define NEW_DLL_INTERFACE   1
 

Definition at line 76 of file langdll.c.


Typedef Documentation

typedef struct tydllinfostruct ** tydllinfohandle
 

Definition at line 120 of file langdll.c.

typedef struct tydllinfostruct* tydllinfoptr
 

Definition at line 120 of file langdll.c.

typedef struct typrocinfostruct ** typrocinfohandle
 

Definition at line 97 of file langdll.c.

typedef struct typrocinfostruct* typrocinfoptr
 

Definition at line 97 of file langdll.c.


Function Documentation

static void addlibrary tydllinfohandle  hdll  )  [static]
 

Definition at line 1330 of file langdll.c.

References loadeddlls.

Referenced by dodllload().

static void addprocinfo tydllinfohandle  hdll,
typrocinfohandle  hprocinfo
[static]
 

Definition at line 983 of file langdll.c.

References procnamehashfunction().

Referenced by parseprocinforesource().

Here is the call graph for this function:

static boolean callproc hdltreenode  hparam1,
tydllinfohandle  hdll,
typrocinfohandle  hprocinfo,
tyvaluerecord vreturned
[static]
 

Definition at line 1794 of file langdll.c.

References callprocwithparams(), fl, freeparamblock(), initparamblock(), and maxdllparams.

Referenced by callstayresident(), and callvolatile().

Here is the call graph for this function:

static boolean callprocwithparams tydllinfohandle  hdll,
typrocinfohandle  hprocinfo,
tydllparamblock params,
tyvaluerecord vreturned
[static]
 

Definition at line 1714 of file langdll.c.

References bigstring, cantfinddllfunctionerror, copyctopstring(), copystring(), dllcallbacks, tydllparamblock::errormessage, fl, fsname, grabthreadglobals(), initvalue(), lang2paramerror(), langerrormessage(), langheaptype(), lockhandle(), lookupprocaddress(), nil, pushvalueontmpstack(), releasethreadglobals(), tydllparamblock::resultdata, tydllparamblock::resultsize, sethandlesize(), and unlockhandle().

Referenced by callproc().

Here is the call graph for this function:

static boolean callstayresident hdltreenode  hparam1,
tydllinfohandle  hdll,
bigstring  bsprocname,
tyvaluerecord vreturned
[static]
 

Definition at line 1831 of file langdll.c.

References callproc(), fl, locateprocinfo(), and unloadlibrary().

Referenced by dodllcall().

Here is the call graph for this function:

static boolean callvolatile hdltreenode  hparam1,
const tyfilespec fs,
bigstring  bsprocname,
tyvaluerecord vreturned
[static]
 

Definition at line 1858 of file langdll.c.

References callproc(), disposehandle(), disposemachofuncptr(), fl, loadlibrary(), nil, parseprocinforesource(), and unloadlibrary().

Referenced by dodllcall().

Here is the call graph for this function:

static void closelibrary tydllinfohandle  hdll  )  [static]
 

Definition at line 1510 of file langdll.c.

References lockhandle(), and unlockhandle().

Referenced by unloadlibrary().

Here is the call graph for this function:

static boolean convertodbtotyval odbValueRecord odbval,
tyvaluerecord val
[static]
 

Definition at line 282 of file langdll.c.

References tyvaluedata::binaryvalue, binaryvaluetype, tyvaluerecord::data, initvalue(), and langexternalgetvaluetype().

Referenced by extCallScript(), extCallScriptText(), extCoerce(), extInvoke(), extOdbAddListValue(), and extOdbSetListValue().

Here is the call graph for this function:

static boolean converttyvaltoodb tyvaluerecord val,
odbValueRecord odbval
[static]
 

Definition at line 297 of file langdll.c.

References copyvaluedata(), copyvaluerecord(), exemptfromtmpstack(), and langexternalgettypeid().

Referenced by extCoerce(), extInvoke(), and extOdbGetListValue().

Here is the call graph for this function:

boolean dllcallverb hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2665 of file langdll.c.

References bigstring, clearbytes(), coercevalue(), dodllcall(), exemptfromtmpstack(), getfilespecvalue(), getparamvalue(), getstringvalue(), langcheckparamcount(), langgetvalsize(), langheapallocated(), lockhandle(), long, maxdllparams, nil, and return().

Referenced by langfunctionvalue().

Here is the call graph for this function:

void dllinitverbs void   ) 
 

Definition at line 2797 of file langdll.c.

References dllcallbacks, fillcalltable(), and nil.

Referenced by shellinit().

Here is the call graph for this function:

boolean dllisloadedverb hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2542 of file langdll.c.

References flnextparamislast, getfilespecvalue(), islibraryloaded(), and setbooleanvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

boolean dllloadverb hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2582 of file langdll.c.

References dodllload(), flnextparamislast, getfilespecvalue(), and setlongvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

boolean dllunloadverb hdltreenode  hparam1,
tyvaluerecord vreturned
 

Definition at line 2625 of file langdll.c.

References dodllunload(), flnextparamislast, getfilespecvalue(), islibraryloaded(), and setbooleanvalue().

Referenced by langfunctionvalue().

Here is the call graph for this function:

static boolean dodllcall hdltreenode  hparam1,
const tyfilespec fs,
bigstring  bsprocname,
tyvaluerecord vreturned
[static]
 

Definition at line 1974 of file langdll.c.

References callstayresident(), callvolatile(), fl, getlibrary(), and nil.

Referenced by dllcallverb().

Here is the call graph for this function:

static boolean dodllload const tyfilespec fs,
tydllinfohandle hdllptr
[static]
 

Definition at line 1916 of file langdll.c.

References addlibrary(), getlibrary(), loadlibrary(), nil, parseprocinforesource(), and unloadlibrary().

Referenced by dllloadverb().

Here is the call graph for this function:

static boolean dodllunload const tyfilespec fs  )  [static]
 

Definition at line 1951 of file langdll.c.

References getlibrary(), removelibrary(), and unloadlibrary().

Referenced by dllunloadverb().

Here is the call graph for this function:

odbBool xCALLBACK extCallScript odbString  bspath,
odbValueRecord vparams,
odbValueRecord value
 

Definition at line 786 of file langdll.c.

References convertodbtotyval(), odbValueRecord::data, exemptfromtmpstack(), grabthreadglobals(), langexternalgettypeid(), langrunscript(), odbValueData::listvalue, nil, NULL, odb_listvaluetype, odb_recordvaluetype, releasethreadglobals(), and odbValueRecord::valuetype.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extCallScriptText odbString  bspath,
odbValueRecord vparams,
Handle text
 

Definition at line 821 of file langdll.c.

References coercetostring(), convertodbtotyval(), odbValueRecord::data, exemptfromtmpstack(), grabthreadglobals(), langrunscript(), odbValueData::listvalue, nil, NULL, odb_listvaluetype, odb_recordvaluetype, releasethreadglobals(), and odbValueRecord::valuetype.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extCoerce odbValueRecord odbval,
odbValueType  newtype
 

Definition at line 758 of file langdll.c.

References binaryvaluetype, coercevalue(), convertodbtotyval(), converttyvaltoodb(), grabthreadglobals(), langexternalgetvaluetype(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extDoScript char *  script,
long  len,
odbValueRecord value
 

Definition at line 664 of file langdll.c.

References clearbytes(), exemptfromtmpstack(), grabthreadglobals(), h, langexternalgettypeid(), langrun(), newfilledhandle(), releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extDoScriptText char *  script,
long  len,
Handle text
 

Definition at line 698 of file langdll.c.

References coercetostring(), exemptfromtmpstack(), grabthreadglobals(), h, langrun(), newfilledhandle(), nil, and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

Handle xCALLBACK extfrontierAlloc long  sz  ) 
 

Definition at line 217 of file langdll.c.

References grabthreadglobals(), h, NewHandle, and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

void xCALLBACK extfrontierFree Handle  h  ) 
 

Definition at line 251 of file langdll.c.

References DisposeHandle, grabthreadglobals(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

char* xCALLBACK extfrontierLock Handle  h  ) 
 

Definition at line 230 of file langdll.c.

References frontierLock(), grabthreadglobals(), HLock, and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

Handle xCALLBACK extfrontierReAlloc Handle  h,
long  sz
 

Definition at line 206 of file langdll.c.

References grabthreadglobals(), releasethreadglobals(), and SetHandleSize.

Referenced by fillcalltable().

Here is the call graph for this function:

long xCALLBACK extfrontierSize Handle  h  ) 
 

Definition at line 260 of file langdll.c.

References GetHandleSize, grabthreadglobals(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

void xCALLBACK extfrontierUnlock Handle  h  ) 
 

Definition at line 273 of file langdll.c.

References grabthreadglobals(), HUnlock, and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extInvoke bigstring  bsscriptname,
void *  pDispParams,
odbValueRecord retval,
boolean flfoundhandler,
unsigned int *  errarg
 

Definition at line 728 of file langdll.c.

References BIGSTRING, convertodbtotyval(), converttyvaltoodb(), disposevaluerecord(), grabthreadglobals(), langwinipchandleCOM(), releasethreadglobals(), and setstringvalue().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbAddListValue odbRef  odb,
odbValueRecord value,
char *  recordname,
odbValueRecord valueData
 

Definition at line 431 of file langdll.c.

References convertodbtotyval(), grabthreadglobals(), langpushlistval(), NULL, odb_listvaluetype, odb_recordvaluetype, releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbCloseFile odbRef  odb  ) 
 

Definition at line 512 of file langdll.c.

References grabthreadglobals(), odbclosefile(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbCountItems odbRef  odb,
bigstring  bspath,
long count
 

Definition at line 564 of file langdll.c.

References grabthreadglobals(), odbcountitems(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbDefined odbRef  odb,
bigstring  bspath
 

Definition at line 525 of file langdll.c.

References grabthreadglobals(), odbdefined(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbDelete odbRef  odb,
bigstring  bspath
 

Definition at line 538 of file langdll.c.

References grabthreadglobals(), odbdelete(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbDeleteListValue odbRef  odb,
odbValueRecord value,
long  idx,
char *  recordname
 

Definition at line 370 of file langdll.c.

References grabthreadglobals(), NULL, odb_listvaluetype, odb_recordvaluetype, opdeletelistitem(), releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

void xCALLBACK extOdbDisposeValue odbRef  odb,
odbValueRecord value
 

Definition at line 642 of file langdll.c.

References grabthreadglobals(), NULL, odbdisposevalue(), releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbRef xCALLBACK extOdbGetCurrentRoot void   ) 
 

Definition at line 455 of file langdll.c.

References grabthreadglobals(), NULL, odbaccesswindow(), odbUpdateOdbref(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

void xCALLBACK extOdbGetError bigstring  bs  ) 
 

Definition at line 655 of file langdll.c.

References grabthreadglobals(), odbGetError(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbGetListCount odbRef  odb,
odbValueRecord value,
long cnt
 

Definition at line 350 of file langdll.c.

References grabthreadglobals(), NULL, odb_listvaluetype, odb_recordvaluetype, opcountlistitems(), releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbGetListValue odbRef  odb,
odbValueRecord value,
long  idx,
char *  recordname,
odbValueRecord valueReturn
 

Definition at line 409 of file langdll.c.

References converttyvaltoodb(), getnthlistval(), grabthreadglobals(), NULL, odb_listvaluetype, odb_recordvaluetype, releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbGetModDate odbRef  odb,
bigstring  bspath,
unsigned long date
 

Definition at line 629 of file langdll.c.

References grabthreadglobals(), odbgetmoddate(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbGetNthItem odbRef  odb,
bigstring  bspath,
long  n,
bigstring  bsname
 

Definition at line 577 of file langdll.c.

References grabthreadglobals(), odbgetnthitem(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbGetType odbRef  odb,
bigstring  bspath,
OSType type
 

Definition at line 551 of file langdll.c.

References grabthreadglobals(), odbgettype(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbGetValue odbRef  odb,
bigstring  bspath,
odbValueRecord value
 

Definition at line 590 of file langdll.c.

References grabthreadglobals(), odbgetvalue(), releasethreadglobals(), and value.

Here is the call graph for this function:

odbBool xCALLBACK extOdbNewFile hdlfilenum  h  ) 
 

Definition at line 473 of file langdll.c.

References grabthreadglobals(), odbnewfile(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbNewListValue odbRef  odb,
odbValueRecord value,
odbBool  flRecord
 

Definition at line 321 of file langdll.c.

References grabthreadglobals(), NULL, odb_listvaluetype, odb_recordvaluetype, opnewlist(), releasethreadglobals(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbNewTable odbRef  odb,
bigstring  bspath
 

Definition at line 616 of file langdll.c.

References grabthreadglobals(), odbnewtable(), and releasethreadglobals().

Here is the call graph for this function:

odbBool xCALLBACK extOdbOpenFile hdlfilenum  h,
odbRef odb
 

Definition at line 486 of file langdll.c.

References grabthreadglobals(), odbopenfile(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbSaveFile odbRef  odb  ) 
 

Definition at line 499 of file langdll.c.

References grabthreadglobals(), odbsavefile(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbSetListValue odbRef  odb,
odbValueRecord value,
long  idx,
char *  recordname,
odbValueRecord valueData
 

Definition at line 388 of file langdll.c.

References convertodbtotyval(), grabthreadglobals(), NULL, odb_listvaluetype, odb_recordvaluetype, releasethreadglobals(), setnthlistval(), and value.

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extOdbSetValue odbRef  odb,
bigstring  bspath,
odbValueRecord value
 

Definition at line 603 of file langdll.c.

References grabthreadglobals(), odbsetvalue(), releasethreadglobals(), and value.

Here is the call graph for this function:

odbBool xCALLBACK extThreadSleep long  sleepticks  ) 
 

Definition at line 882 of file langdll.c.

References grabthreadglobals(), languserescaped(), nil, processsleep(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

odbBool xCALLBACK extThreadYield void   ) 
 

Definition at line 856 of file langdll.c.

References grabthreadglobals(), langbackgroundtask(), languserescaped(), and releasethreadglobals().

Referenced by fillcalltable().

Here is the call graph for this function:

void fillcalltable XDLLProcTable pt  ) 
 

Definition at line 2389 of file langdll.c.

References convertmachotocfmfuncptr(), extCallScript(), extCallScriptText(), extCoerce(), extDoScript(), extDoScriptText(), extfrontierAlloc(), extfrontierFree(), extfrontierLock(), extfrontierReAlloc(), extfrontierSize(), extfrontierUnlock(), extInvoke(), extOdbAddListValue(), extOdbCloseFile(), extOdbCountItems(), extOdbDefined(), extOdbDelete(), extOdbDeleteListValue(), extOdbDisposeValue(), extOdbGetCurrentRoot(), extOdbGetError(), extOdbGetListCount(), extOdbGetListValue(), extOdbGetModDate(), extOdbGetNthItem(), extOdbGetType(), extOdbGetValue(), extOdbNewFile(), extOdbNewListValue(), extOdbNewTable(), extOdbOpenFile(), extOdbSaveFile(), extOdbSetListValue(), extOdbSetValue(), extThreadSleep(), extThreadYield(), and pt.

Referenced by dllinitverbs().

Here is the call graph for this function:

static void freelibrary tydllinfohandle  hdll  )  [static]
 

Definition at line 1421 of file langdll.c.

References disposehandle(), and freeprocinfobuckets().

Referenced by loadlibrary(), and unloadlibrary().

Here is the call graph for this function:

static void freeparamblock typrocinfohandle  hprocinfo,
Handle orighandles
[static]
 

Definition at line 1647 of file langdll.c.

References disposevaluerecord(), initvalue(), nil, and unlockhandle().

Referenced by callproc().

Here is the call graph for this function:

static void freeprocinfobuckets tydllinfohandle  hdll  )  [static]
 

Definition at line 1035 of file langdll.c.

References ctprocinfohashbuckets, disposehandle(), disposemachofuncptr(), h, typrocinfostruct::hashlink, MACVERSION, and nil.

Referenced by freelibrary().

Here is the call graph for this function:

static tydllinfohandle getlibrary const tyfilespec fs  )  [static]
 

Definition at line 1383 of file langdll.c.

References equalfilespecs(), tydllinfostruct::hnextdll, loadeddlls, and nil.

Referenced by dodllcall(), dodllload(), dodllunload(), and islibraryloaded().

Here is the call graph for this function:

static tyvaluetype gettypefromchar char  val  )  [static]
 

Definition at line 914 of file langdll.c.

References longvaluetype, novaluetype, and stringvaluetype.

Referenced by newprocinfo().

static boolean initparamblock hdltreenode  hp1,
typrocinfohandle  hprocinfo,
tydllparamblock params,
Handle orighandles
[static]
 

Definition at line 1592 of file langdll.c.

References clearbytes(), coercevalue(), exemptfromtmpstack(), getparamvalue(), langcheckparamcount(), langgetvalsize(), langheapallocated(), lockhandle(), long, tydllparamblock::paramdata, and tydllparamblock::paramsize.

Referenced by callproc().

Here is the call graph for this function:

static boolean islibraryloaded const tyfilespec fs  )  [static]
 

Definition at line 1904 of file langdll.c.

References getlibrary(), and nil.

Referenced by dllisloadedverb(), and dllunloadverb().

Here is the call graph for this function:

static tydllinfohandle loadlibrary const tyfilespec fs  )  [static]
 

Definition at line 1541 of file langdll.c.

References freelibrary(), newlibrary(), nil, and openlibrary().

Referenced by callvolatile(), and dodllload().

Here is the call graph for this function:

static boolean loadprocinforesource tydllinfohandle  hdll  )  [static]
 

Definition at line 1101 of file langdll.c.

References HLock, noErr, and NULL.

Referenced by parseprocinforesource().

static boolean locateprocinfo tydllinfohandle  hdll,
bigstring  bsprocname,
typrocinfohandle hprocinfoptr
[static]
 

Definition at line 1001 of file langdll.c.

References cantfindprocinfofunctionerror, comparestrings(), fsname, typrocinfostruct::hashlink, lang2paramerror(), nil, and procnamehashfunction().

Referenced by callstayresident().

Here is the call graph for this function:

static boolean lookupprocaddress tydllinfohandle  hdll,
typrocinfohandle  hprocinfo
[static]
 

Definition at line 1678 of file langdll.c.

References convertcfmtomachofuncptr(), nil, noErr, and NULL.

Referenced by callprocwithparams().

Here is the call graph for this function:

static tydllinfohandle newlibrary const tyfilespec fs  )  [static]
 

Definition at line 1404 of file langdll.c.

References tydllinfostruct::fs, newclearhandle(), and nil.

Referenced by loadlibrary().

Here is the call graph for this function:

static typrocinfohandle newprocinfo char *  pname,
long  lenname,
char *  pparams,
long  lenparams
[static]
 

Definition at line 1064 of file langdll.c.

References gettypefromchar(), newclearhandle(), nil, nullterminate, and setstringlength.

Referenced by parseprocinforesource().

Here is the call graph for this function:

boolean odbaccesswindow WindowPtr  w,
odbRef odb
 

boolean odbclosefile odbRef  odb  ) 
 

boolean odbcountitems odbRef  odb,
bigstring  bspath,
long count
 

boolean odbdefined odbRef  odb,
bigstring  bspath
 

boolean odbdelete odbRef  odb,
bigstring  bspath
 

boolean odbdisposevalue odbRef  odb,
odbValueRecord value
 

pascal void odbGetError bigstring  bs  ) 
 

Definition at line 945 of file odbengine.c.

References bserror, and copystring().

Here is the call graph for this function:

boolean odbgetmoddate odbRef  odb,
bigstring  bspath,
unsigned long date
 

boolean odbgetnthitem odbRef  odb,
bigstring  bspath,
long  n,
bigstring  bsname
 

boolean odbgettype odbRef  odb,
bigstring  bspath,
OSType odbType
 

boolean odbgetvalue odbRef  odb,
bigstring  bspath,
odbValueRecord value
 

boolean odbnewfile hdlfilenum  fnum  ) 
 

boolean odbnewtable odbRef  odb,
bigstring  bspath
 

boolean odbopenfile hdlfilenum  fnum,
odbRef odb,
boolean  flreadonly
 

boolean odbsavefile odbRef  odb  ) 
 

boolean odbsetvalue odbRef  odb,
bigstring  bspath,
odbValueRecord value
 

pascal boolean odbUpdateOdbref WindowPtr  w,
odbRef  odb
 

static boolean openlibrary tydllinfohandle  hdll  )  [static]
 

Definition at line 1442 of file langdll.c.

References bigstring, bsfunctionname, cantconnecttodllerror, copystring(), filefrompath(), fsname, lang2paramerror(), nil, noErr, NULL, and nullterminate.

Referenced by loadlibrary().

Here is the call graph for this function:

static boolean parseprocinforesource tydllinfohandle  hdll,
bigstring  bsprocname,
typrocinfohandle hprocinfoptr
[static]
 

Definition at line 1176 of file langdll.c.

References addprocinfo(), cantfindprocinfoerror, cantfindprocinfoloaderror, fsname, lang2paramerror(), langparamerror(), lenbigstring, loadprocinforesource(), maxdllparams, newprocinfo(), nil, and unloadprocinforesource().

Referenced by callvolatile(), and dodllload().

Here is the call graph for this function:

static unsigned long procnamehashfunction bigstring  bs  )  [static]
 

Definition at line 957 of file langdll.c.

References ctprocinfohashbuckets, long, and stringlength.

Referenced by addprocinfo(), and locateprocinfo().

static void removelibrary tydllinfohandle  hdll  )  [static]
 

Definition at line 1346 of file langdll.c.

References tydllinfostruct::hnextdll, loadeddlls, and nil.

Referenced by dodllunload().

static void unloadlibrary tydllinfohandle  hdll  )  [static]
 

Definition at line 1565 of file langdll.c.

References closelibrary(), and freelibrary().

Referenced by callstayresident(), callvolatile(), dodllload(), and dodllunload().

Here is the call graph for this function:

static void unloadprocinforesource tydllinfohandle  hdll  )  [static]
 

Definition at line 1158 of file langdll.c.

References disposehandle(), and HUnlock.

Referenced by parseprocinforesource().

Here is the call graph for this function:


Variable Documentation

XDLLProcTable* dllcallbacks [static]
 

Definition at line 146 of file langdll.c.

Referenced by callprocwithparams(), and dllinitverbs().

odbRef globalodb = NULL
 

Definition at line 453 of file langdll.c.

tydllinfohandle loadeddlls [static]
 

Definition at line 144 of file langdll.c.

Referenced by addlibrary(), getlibrary(), and removelibrary().


Generated on Sat Jun 3 02:06:24 2006 for frontierkernel 10.1.10a by  doxygen 1.4.6