summaryrefslogtreecommitdiffstats
path: root/src/base/cba/cbaPrs.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/base/cba/cbaPrs.h')
-rw-r--r--src/base/cba/cbaPrs.h37
1 files changed, 20 insertions, 17 deletions
diff --git a/src/base/cba/cbaPrs.h b/src/base/cba/cbaPrs.h
index 5183762d..6a259ccd 100644
--- a/src/base/cba/cbaPrs.h
+++ b/src/base/cba/cbaPrs.h
@@ -128,6 +128,7 @@ struct Prs_Man_t_
Vec_Int_t vFailed;
Vec_Int_t vSucceeded;
// error handling
+ int nOpens; // open port counter
int fUsingTemp2; // vTemp2 is in use
int FuncNameId; // temp value
int FuncRangeId; // temp value
@@ -226,10 +227,10 @@ static inline void Prs_ManFinalizeNtk( Prs_Man_t * p )
p->pNtk = NULL;
}
-static inline int Prs_NtkNewStrId( Prs_Ntk_t * pNtk, const char * format, ... )
+static inline int Prs_ManNewStrId( Prs_Man_t * p, const char * format, ... )
{
- Abc_Nam_t * p = pNtk->pStrs;
- Vec_Str_t * vBuf = Abc_NamBuffer( p );
+ Abc_Nam_t * pStrs = p->pStrs;
+ Vec_Str_t * vBuf = Abc_NamBuffer( pStrs );
int nAdded, nSize = 1000;
va_list args; va_start( args, format );
Vec_StrGrow( vBuf, Vec_StrSize(vBuf) + nSize );
@@ -241,7 +242,7 @@ static inline int Prs_NtkNewStrId( Prs_Ntk_t * pNtk, const char * format, ... )
assert( nSize == nAdded );
}
va_end( args );
- return Abc_NamStrFindOrAddLim( p, Vec_StrLimit(vBuf), Vec_StrLimit(vBuf) + nAdded, NULL );
+ return Abc_NamStrFindOrAddLim( pStrs, Vec_StrLimit(vBuf), Vec_StrLimit(vBuf) + nAdded, NULL );
}
// parsing slice/concatentation/box
@@ -306,20 +307,22 @@ static inline char * Prs_ManLoadFile( char * pFileName, char ** ppLimit )
static inline Prs_Man_t * Prs_ManAlloc( char * pFileName )
{
Prs_Man_t * p;
- char * pBuffer, * pLimit;
- pBuffer = Prs_ManLoadFile( pFileName, &pLimit );
- if ( pBuffer == NULL )
- return NULL;
p = ABC_CALLOC( Prs_Man_t, 1 );
- p->pName = pFileName;
- p->pBuffer = pBuffer;
- p->pLimit = pLimit;
- p->pCur = pBuffer;
- p->pStrs = Abc_NamStart( 1000, 24 );
- p->pFuns = Abc_NamStart( 100, 24 );
- p->vNtks = Vec_PtrAlloc( 100 );
- p->vHash = Hash_IntManStart( 1000 );
-// Hash_Int2ManInsert( p->vHash, 0, 0, 0 );
+ if ( pFileName )
+ {
+ char * pBuffer, * pLimit;
+ pBuffer = Prs_ManLoadFile( pFileName, &pLimit );
+ if ( pBuffer == NULL )
+ return NULL;
+ p->pName = pFileName;
+ p->pBuffer = pBuffer;
+ p->pLimit = pLimit;
+ p->pCur = pBuffer;
+ }
+ p->pStrs = Abc_NamStart( 1000, 24 );
+ p->pFuns = Abc_NamStart( 100, 24 );
+ p->vHash = Hash_IntManStart( 1000 );
+ p->vNtks = Vec_PtrAlloc( 100 );
return p;
}