FORM v5.0.1-33-gdf7fc94
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 254 of file names.c.

◆ GetFunction()

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

Definition at line 344 of file names.c.

◆ GetNumber()

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

Definition at line 390 of file names.c.

◆ GetLastExprName()

int GetLastExprName ( UBYTE *  name,
WORD *  number 
)

Definition at line 440 of file names.c.

◆ GetOName()

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

Definition at line 462 of file names.c.

◆ GetAutoName()

int GetAutoName ( UBYTE *  name,
WORD *  number 
)

Definition at line 481 of file names.c.

◆ GetVar()

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

Definition at line 526 of file names.c.

◆ EntVar()

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

Definition at line 559 of file names.c.

◆ GetDollar()

int GetDollar ( UBYTE *  name)

Definition at line 592 of file names.c.

◆ DumpTree()

void DumpTree ( NAMETREE nametree)

Definition at line 604 of file names.c.

◆ DumpNode()

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

Definition at line 617 of file names.c.

◆ CompactifyTree()

int CompactifyTree ( NAMETREE nametree,
WORD  par 
)

Definition at line 636 of file names.c.

◆ CopyTree()

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

Definition at line 698 of file names.c.

◆ LinkTree()

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

Definition at line 788 of file names.c.

◆ MakeNameTree()

NAMETREE * MakeNameTree ( void  )

Definition at line 819 of file names.c.

◆ FreeNameTree()

void FreeNameTree ( NAMETREE n)

Definition at line 838 of file names.c.

◆ ClearWildcardNames()

void ClearWildcardNames ( void  )

Definition at line 853 of file names.c.

◆ AddWildcardName()

int AddWildcardName ( UBYTE *  name)

Definition at line 858 of file names.c.

◆ GetWildcardName()

int GetWildcardName ( UBYTE *  name)

Definition at line 902 of file names.c.

◆ AddSymbol()

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

Definition at line 924 of file names.c.

◆ CoSymbol()

int CoSymbol ( UBYTE *  s)

Definition at line 950 of file names.c.

◆ AddIndex()

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

Definition at line 1092 of file names.c.

◆ CoIndex()

int CoIndex ( UBYTE *  s)

Definition at line 1116 of file names.c.

◆ DoDimension()

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

Definition at line 1164 of file names.c.

◆ CoDimension()

int CoDimension ( UBYTE *  s)

Definition at line 1230 of file names.c.

◆ AddVector()

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

Definition at line 1248 of file names.c.

◆ CoVector()

int CoVector ( UBYTE *  s)

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

◆ CoCommuteInSet()

int CoCommuteInSet ( UBYTE *  s)

Definition at line 1360 of file names.c.

◆ CoFunction()

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

Definition at line 1450 of file names.c.

◆ CoNFunction()

int CoNFunction ( UBYTE *  s)

Definition at line 1630 of file names.c.

◆ CoCFunction()

int CoCFunction ( UBYTE *  s)

Definition at line 1631 of file names.c.

◆ CoNTensor()

int CoNTensor ( UBYTE *  s)

Definition at line 1632 of file names.c.

◆ CoCTensor()

int CoCTensor ( UBYTE *  s)

Definition at line 1633 of file names.c.

◆ DoTable()

int DoTable ( UBYTE *  s,
int  par 
)

Definition at line 1672 of file names.c.

◆ CoTable()

int CoTable ( UBYTE *  s)

Definition at line 2054 of file names.c.

◆ CoNTable()

int CoNTable ( UBYTE *  s)

Definition at line 2064 of file names.c.

◆ CoCTable()

int CoCTable ( UBYTE *  s)

Definition at line 2074 of file names.c.

◆ EmptyTable()

void EmptyTable ( TABLES  T)

Definition at line 2084 of file names.c.

◆ AddSet()

int AddSet ( UBYTE *  name,
WORD  dim 
)

Definition at line 2128 of file names.c.

◆ DoElements()

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

Definition at line 2161 of file names.c.

◆ CoSet()

int CoSet ( UBYTE *  s)

Definition at line 2361 of file names.c.

◆ DoTempSet()

int DoTempSet ( UBYTE *  from,
UBYTE *  to 
)

Definition at line 2488 of file names.c.

◆ CoAuto()

int CoAuto ( UBYTE *  inp)

Definition at line 2580 of file names.c.

◆ AddDollar()

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

Definition at line 2610 of file names.c.

◆ ReplaceDollar()

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

Definition at line 2653 of file names.c.

◆ AddDubious()

int AddDubious ( UBYTE *  name)

Definition at line 2686 of file names.c.

◆ MakeDubious()

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

Definition at line 2700 of file names.c.

◆ NameConflict()

int NameConflict ( int  type,
UBYTE *  name 
)

Definition at line 2735 of file names.c.

◆ AddExpression()

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

Definition at line 2751 of file names.c.

◆ GetLabel()

int GetLabel ( UBYTE *  name)

Definition at line 2794 of file names.c.

◆ ResetVariables()

void ResetVariables ( int  par)

Definition at line 2839 of file names.c.

◆ RemoveDollars()

void RemoveDollars ( void  )

Definition at line 3135 of file names.c.

◆ Globalize()

void Globalize ( int  par)

Definition at line 3162 of file names.c.

◆ TestName()

int TestName ( UBYTE *  name)

Definition at line 3261 of file names.c.