1 /**************************************************************************** 2 Copyright (C) 1987-2015 by Jeffery P. Hansen 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 2 of the License, or 7 (at your option) any later version. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License along 15 with this program; if not, write to the Free Software Foundation, Inc., 16 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 17 ****************************************************************************/ 18 #ifndef __vparser_h 19 #define __vparser_h 20 #include "expr.h" 21 22 #define TYPE_INT 0 23 #define TYPE_STR 1 24 25 void VerSetRootMod(); 26 void VerEndGate(); 27 void VerSetProperty(const char *prop,int n); 28 void VerSetStrProperty(const char *prop,const char *value); 29 void VerCheckVersion(const char*); 30 void VerCircuitProp(const char*,const void*,int); 31 void VerModuleProp(const char*,const void*,int); 32 void VerAddScript(const char*); 33 void VerAddVLib(const char*); 34 void VerNewModule(int,const char*,int); 35 void VerModParm(const char*); 36 void VerEndModule(); 37 void VerNewNet(const char*,int,int); 38 void VerGate(const char *gtype,const char *instName); 39 void VerCell(const char *ctype,const char *instName); 40 void VerAttach(const char*,const char*,int); 41 void VerRevPad(int); 42 void VerMakeNode(int,int,int,int,int); 43 void VerEndDecls(); 44 void VerMakeWire(int); 45 void VerSetPos(int,int); 46 void VerSetSize(int,int); 47 void VerSetRot(int); 48 void VerSetShowName(int); 49 void VerSetWireDecorationPos(int,int,int); 50 void VerPlaceWire(int); 51 void VerJointNet(const char*); 52 void VerBlockPort(const char *pname,int pdir,int widx); 53 void VerBeginBD(); 54 void VerEndBD(); 55 void VerBDPort(const char*,int,const char*,int,int,int); 56 void VerTranDup(); 57 void VerTranRange(int,int); 58 void VerIconData(const char *data); 59 void VerSetIcon(const char *name,int N,int x,int y); 60 void VerSymPort(const char *ptype,const char *name,int nbits,int x,int y,int orient); 61 void VerSymbol(unsigned id); 62 void VerSetBlockSymbol(unsigned id); 63 void VerAddHdlLine(const char *text); 64 void VerRenameCurrent(const char *name); 65 void VerModHashParm(const char*,Expr*); 66 void VerCallMParmFlush(); 67 void VerCallMParmAdd(const char *name,const char *value); 68 void VerAddScriptLine(const char *line); 69 70 void VerBeginDelayDef(const char *tech, const char *prim); 71 void VerEndDelayDef(); 72 void PrimSet(const char*,const char*,Expr*); 73 74 int ycIsKW(char *Tok); 75 76 #endif 77