FORM 4.3
Functions
names.c File Reference
#include "form3.h"

Go to the source code of this file.

Functions

NAMENODEGetNode (NAMETREE *nametree, UBYTE *name)
 
int AddName (NAMETREE *nametree, UBYTE *name, WORD type, WORD number, int *nodenum)
 
int GetName (NAMETREE *nametree, UBYTE *name, WORD *number, int par)
 
UBYTE * GetFunction (UBYTE *s, WORD *funnum)
 
UBYTE * GetNumber (UBYTE *s, WORD *num)
 
int GetLastExprName (UBYTE *name, WORD *number)
 
int GetOName (NAMETREE *nametree, UBYTE *name, WORD *number, int par)
 
int GetAutoName (UBYTE *name, WORD *number)
 
int GetVar (UBYTE *name, WORD *type, WORD *number, int wantedtype, int par)
 
WORD EntVar (WORD type, UBYTE *name, WORD x, WORD y, WORD z, WORD d)
 
int GetDollar (UBYTE *name)
 
VOID DumpTree (NAMETREE *nametree)
 
VOID DumpNode (NAMETREE *nametree, WORD node, WORD depth)
 
int CompactifyTree (NAMETREE *nametree, WORD par)
 
VOID CopyTree (NAMETREE *newtree, NAMETREE *oldtree, WORD node, WORD par)
 
VOID LinkTree (NAMETREE *tree, WORD offset, WORD numnodes)
 
NAMETREEMakeNameTree ()
 
VOID FreeNameTree (NAMETREE *n)
 
void ClearWildcardNames ()
 
int AddWildcardName (UBYTE *name)
 
int GetWildcardName (UBYTE *name)
 
int AddSymbol (UBYTE *name, int minpow, int maxpow, int cplx, int dim)
 
int CoSymbol (UBYTE *s)
 
int AddIndex (UBYTE *name, int dim, int dim4)
 
int CoIndex (UBYTE *s)
 
UBYTE * DoDimension (UBYTE *s, int *dim, int *dim4)
 
int CoDimension (UBYTE *s)
 
int AddVector (UBYTE *name, int cplx, int dim)
 
int CoVector (UBYTE *s)
 
int AddFunction (UBYTE *name, int comm, int istensor, int cplx, int symprop, int dim, int argmax, int argmin)
 
int CoCommuteInSet (UBYTE *s)
 
int CoFunction (UBYTE *s, int comm, int istensor)
 
int CoNFunction (UBYTE *s)
 
int CoCFunction (UBYTE *s)
 
int CoNTensor (UBYTE *s)
 
int CoCTensor (UBYTE *s)
 
int DoTable (UBYTE *s, int par)
 
int CoTable (UBYTE *s)
 
int CoNTable (UBYTE *s)
 
int CoCTable (UBYTE *s)
 
void EmptyTable (TABLES T)
 
int AddSet (UBYTE *name, WORD dim)
 
int DoElements (UBYTE *s, SETS set, UBYTE *name)
 
int CoSet (UBYTE *s)
 
int DoTempSet (UBYTE *from, UBYTE *to)
 
int CoAuto (UBYTE *inp)
 
int AddDollar (UBYTE *name, WORD type, WORD *start, LONG size)
 
int ReplaceDollar (WORD number, WORD newtype, WORD *newstart, LONG newsize)
 
int AddDubious (UBYTE *name)
 
int MakeDubious (NAMETREE *nametree, UBYTE *name, WORD *number)
 
int NameConflict (int type, UBYTE *name)
 
int AddExpression (UBYTE *name, int x, int y)
 
int GetLabel (UBYTE *name)
 
void ResetVariables (int par)
 
void RemoveDollars ()
 
void Globalize (int par)
 
int TestName (UBYTE *name)
 

Detailed Description

The complete names administration. All variables with a name have to pass here to be properly registered, have structs of the proper type assigned to them etc. The file also contains the utility routines for maintaining the balanced trees that make searching for names rather fast.

Definition in file names.c.

Function Documentation

◆ GetNode()

NAMENODE * GetNode ( NAMETREE nametree,
UBYTE *  name 
)

Definition at line 49 of file names.c.

◆ AddName()

int AddName ( NAMETREE nametree,
UBYTE *  name,
WORD  type,
WORD  number,
int *  nodenum 
)

Definition at line 71 of file names.c.

◆ GetName()

int GetName ( NAMETREE nametree,
UBYTE *  name,
WORD *  number,
int  par 
)

Definition at line 252 of file names.c.

◆ GetFunction()

UBYTE * GetFunction ( UBYTE *  s,
WORD *  funnum 
)

Definition at line 340 of file names.c.

◆ GetNumber()

UBYTE * GetNumber ( UBYTE *  s,
WORD *  num 
)

Definition at line 386 of file names.c.

◆ GetLastExprName()

int GetLastExprName ( UBYTE *  name,
WORD *  number 
)

Definition at line 436 of file names.c.

◆ GetOName()

int GetOName ( NAMETREE nametree,
UBYTE *  name,
WORD *  number,
int  par 
)

Definition at line 458 of file names.c.

◆ GetAutoName()

int GetAutoName ( UBYTE *  name,
WORD *  number 
)

Definition at line 477 of file names.c.

◆ GetVar()

int GetVar ( UBYTE *  name,
WORD *  type,
WORD *  number,
int  wantedtype,
int  par 
)

Definition at line 522 of file names.c.

◆ EntVar()

WORD EntVar ( WORD  type,
UBYTE *  name,
WORD  x,
WORD  y,
WORD  z,
WORD  d 
)

Definition at line 555 of file names.c.

◆ GetDollar()

int GetDollar ( UBYTE *  name)

Definition at line 588 of file names.c.

◆ DumpTree()

VOID DumpTree ( NAMETREE nametree)

Definition at line 600 of file names.c.

◆ DumpNode()

VOID DumpNode ( NAMETREE nametree,
WORD  node,
WORD  depth 
)

Definition at line 613 of file names.c.

◆ CompactifyTree()

int CompactifyTree ( NAMETREE nametree,
WORD  par 
)

Definition at line 632 of file names.c.

◆ CopyTree()

VOID CopyTree ( NAMETREE newtree,
NAMETREE oldtree,
WORD  node,
WORD  par 
)

Definition at line 694 of file names.c.

◆ LinkTree()

VOID LinkTree ( NAMETREE tree,
WORD  offset,
WORD  numnodes 
)

Definition at line 782 of file names.c.

◆ MakeNameTree()

NAMETREE * MakeNameTree ( )

Definition at line 813 of file names.c.

◆ FreeNameTree()

VOID FreeNameTree ( NAMETREE n)

Definition at line 832 of file names.c.

◆ ClearWildcardNames()

void ClearWildcardNames ( )

Definition at line 847 of file names.c.

◆ AddWildcardName()

int AddWildcardName ( UBYTE *  name)

Definition at line 852 of file names.c.

◆ GetWildcardName()

int GetWildcardName ( UBYTE *  name)

Definition at line 896 of file names.c.

◆ AddSymbol()

int AddSymbol ( UBYTE *  name,
int  minpow,
int  maxpow,
int  cplx,
int  dim 
)

Definition at line 918 of file names.c.

◆ CoSymbol()

int CoSymbol ( UBYTE *  s)

Definition at line 944 of file names.c.

◆ AddIndex()

int AddIndex ( UBYTE *  name,
int  dim,
int  dim4 
)

Definition at line 1086 of file names.c.

◆ CoIndex()

int CoIndex ( UBYTE *  s)

Definition at line 1110 of file names.c.

◆ DoDimension()

UBYTE * DoDimension ( UBYTE *  s,
int *  dim,
int *  dim4 
)

Definition at line 1158 of file names.c.

◆ CoDimension()

int CoDimension ( UBYTE *  s)

Definition at line 1224 of file names.c.

◆ AddVector()

int AddVector ( UBYTE *  name,
int  cplx,
int  dim 
)

Definition at line 1242 of file names.c.

◆ CoVector()

int CoVector ( UBYTE *  s)

Definition at line 1265 of file names.c.

◆ AddFunction()

int AddFunction ( UBYTE *  name,
int  comm,
int  istensor,
int  cplx,
int  symprop,
int  dim,
int  argmax,
int  argmin 
)

Definition at line 1324 of file names.c.

◆ CoCommuteInSet()

int CoCommuteInSet ( UBYTE *  s)

Definition at line 1354 of file names.c.

◆ CoFunction()

int CoFunction ( UBYTE *  s,
int  comm,
int  istensor 
)

Definition at line 1444 of file names.c.

◆ CoNFunction()

int CoNFunction ( UBYTE *  s)

Definition at line 1622 of file names.c.

◆ CoCFunction()

int CoCFunction ( UBYTE *  s)

Definition at line 1623 of file names.c.

◆ CoNTensor()

int CoNTensor ( UBYTE *  s)

Definition at line 1624 of file names.c.

◆ CoCTensor()

int CoCTensor ( UBYTE *  s)

Definition at line 1625 of file names.c.

◆ DoTable()

int DoTable ( UBYTE *  s,
int  par 
)

Definition at line 1659 of file names.c.

◆ CoTable()

int CoTable ( UBYTE *  s)

Definition at line 2022 of file names.c.

◆ CoNTable()

int CoNTable ( UBYTE *  s)

Definition at line 2032 of file names.c.

◆ CoCTable()

int CoCTable ( UBYTE *  s)

Definition at line 2042 of file names.c.

◆ EmptyTable()

void EmptyTable ( TABLES  T)

Definition at line 2052 of file names.c.

◆ AddSet()

int AddSet ( UBYTE *  name,
WORD  dim 
)

Definition at line 2096 of file names.c.

◆ DoElements()

int DoElements ( UBYTE *  s,
SETS  set,
UBYTE *  name 
)

Definition at line 2129 of file names.c.

◆ CoSet()

int CoSet ( UBYTE *  s)

Definition at line 2326 of file names.c.

◆ DoTempSet()

int DoTempSet ( UBYTE *  from,
UBYTE *  to 
)

Definition at line 2420 of file names.c.

◆ CoAuto()

int CoAuto ( UBYTE *  inp)

Definition at line 2512 of file names.c.

◆ AddDollar()

int AddDollar ( UBYTE *  name,
WORD  type,
WORD *  start,
LONG  size 
)

Definition at line 2542 of file names.c.

◆ ReplaceDollar()

int ReplaceDollar ( WORD  number,
WORD  newtype,
WORD *  newstart,
LONG  newsize 
)

Definition at line 2586 of file names.c.

◆ AddDubious()

int AddDubious ( UBYTE *  name)

Definition at line 2619 of file names.c.

◆ MakeDubious()

int MakeDubious ( NAMETREE nametree,
UBYTE *  name,
WORD *  number 
)

Definition at line 2633 of file names.c.

◆ NameConflict()

int NameConflict ( int  type,
UBYTE *  name 
)

Definition at line 2668 of file names.c.

◆ AddExpression()

int AddExpression ( UBYTE *  name,
int  x,
int  y 
)

Definition at line 2684 of file names.c.

◆ GetLabel()

int GetLabel ( UBYTE *  name)

Definition at line 2726 of file names.c.

◆ ResetVariables()

void ResetVariables ( int  par)

Definition at line 2771 of file names.c.

◆ RemoveDollars()

void RemoveDollars ( )

Definition at line 3067 of file names.c.

◆ Globalize()

void Globalize ( int  par)

Definition at line 3094 of file names.c.

◆ TestName()

int TestName ( UBYTE *  name)

Definition at line 3193 of file names.c.