FORM v5.0.0-35-g6318119
Functions
names.c File Reference
#include "form3.h"
Include dependency graph for names.c:

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 *namein, 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)
 
int 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)
 
void FreeNameTree (NAMETREE *n)
 
void ClearWildcardNames (void)
 
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)
 
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 *  namein,
WORD *  number,
int  par 
)

Definition at line 252 of file names.c.

◆ GetFunction()

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

Definition at line 342 of file names.c.

◆ GetNumber()

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

Definition at line 388 of file names.c.

◆ GetLastExprName()

int GetLastExprName ( UBYTE *  name,
WORD *  number 
)

Definition at line 438 of file names.c.

◆ GetOName()

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

Definition at line 460 of file names.c.

◆ GetAutoName()

int GetAutoName ( UBYTE *  name,
WORD *  number 
)

Definition at line 479 of file names.c.

◆ GetVar()

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

Definition at line 524 of file names.c.

◆ EntVar()

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

Definition at line 557 of file names.c.

◆ GetDollar()

int GetDollar ( UBYTE *  name)

Definition at line 590 of file names.c.

◆ DumpTree()

void DumpTree ( NAMETREE nametree)

Definition at line 602 of file names.c.

◆ DumpNode()

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

Definition at line 615 of file names.c.

◆ CompactifyTree()

int CompactifyTree ( NAMETREE nametree,
WORD  par 
)

Definition at line 634 of file names.c.

◆ CopyTree()

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

Definition at line 696 of file names.c.

◆ LinkTree()

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

Definition at line 784 of file names.c.

◆ MakeNameTree()

NAMETREE * MakeNameTree ( void  )

Definition at line 815 of file names.c.

◆ FreeNameTree()

void FreeNameTree ( NAMETREE n)

Definition at line 834 of file names.c.

◆ ClearWildcardNames()

void ClearWildcardNames ( void  )

Definition at line 849 of file names.c.

◆ AddWildcardName()

int AddWildcardName ( UBYTE *  name)

Definition at line 854 of file names.c.

◆ GetWildcardName()

int GetWildcardName ( UBYTE *  name)

Definition at line 898 of file names.c.

◆ AddSymbol()

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

Definition at line 920 of file names.c.

◆ CoSymbol()

int CoSymbol ( UBYTE *  s)

Definition at line 946 of file names.c.

◆ AddIndex()

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

Definition at line 1088 of file names.c.

◆ CoIndex()

int CoIndex ( UBYTE *  s)

Definition at line 1112 of file names.c.

◆ DoDimension()

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

Definition at line 1160 of file names.c.

◆ CoDimension()

int CoDimension ( UBYTE *  s)

Definition at line 1226 of file names.c.

◆ AddVector()

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

Definition at line 1244 of file names.c.

◆ CoVector()

int CoVector ( UBYTE *  s)

Definition at line 1267 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 1326 of file names.c.

◆ CoCommuteInSet()

int CoCommuteInSet ( UBYTE *  s)

Definition at line 1356 of file names.c.

◆ CoFunction()

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

Definition at line 1446 of file names.c.

◆ CoNFunction()

int CoNFunction ( UBYTE *  s)

Definition at line 1626 of file names.c.

◆ CoCFunction()

int CoCFunction ( UBYTE *  s)

Definition at line 1627 of file names.c.

◆ CoNTensor()

int CoNTensor ( UBYTE *  s)

Definition at line 1628 of file names.c.

◆ CoCTensor()

int CoCTensor ( UBYTE *  s)

Definition at line 1629 of file names.c.

◆ DoTable()

int DoTable ( UBYTE *  s,
int  par 
)

Definition at line 1668 of file names.c.

◆ CoTable()

int CoTable ( UBYTE *  s)

Definition at line 2050 of file names.c.

◆ CoNTable()

int CoNTable ( UBYTE *  s)

Definition at line 2060 of file names.c.

◆ CoCTable()

int CoCTable ( UBYTE *  s)

Definition at line 2070 of file names.c.

◆ EmptyTable()

void EmptyTable ( TABLES  T)

Definition at line 2080 of file names.c.

◆ AddSet()

int AddSet ( UBYTE *  name,
WORD  dim 
)

Definition at line 2124 of file names.c.

◆ DoElements()

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

Definition at line 2157 of file names.c.

◆ CoSet()

int CoSet ( UBYTE *  s)

Definition at line 2357 of file names.c.

◆ DoTempSet()

int DoTempSet ( UBYTE *  from,
UBYTE *  to 
)

Definition at line 2482 of file names.c.

◆ CoAuto()

int CoAuto ( UBYTE *  inp)

Definition at line 2574 of file names.c.

◆ AddDollar()

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

Definition at line 2604 of file names.c.

◆ ReplaceDollar()

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

Definition at line 2647 of file names.c.

◆ AddDubious()

int AddDubious ( UBYTE *  name)

Definition at line 2680 of file names.c.

◆ MakeDubious()

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

Definition at line 2694 of file names.c.

◆ NameConflict()

int NameConflict ( int  type,
UBYTE *  name 
)

Definition at line 2729 of file names.c.

◆ AddExpression()

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

Definition at line 2745 of file names.c.

◆ GetLabel()

int GetLabel ( UBYTE *  name)

Definition at line 2788 of file names.c.

◆ ResetVariables()

void ResetVariables ( int  par)

Definition at line 2833 of file names.c.

◆ RemoveDollars()

void RemoveDollars ( void  )

Definition at line 3129 of file names.c.

◆ Globalize()

void Globalize ( int  par)

Definition at line 3156 of file names.c.

◆ TestName()

int TestName ( UBYTE *  name)

Definition at line 3255 of file names.c.