Browse Source

cmSymTbl.h/c: Added cmSymTblRegisterFmt()

master
kevin 11 years ago
parent
commit
66cf71e419
2 changed files with 19 additions and 0 deletions
  1. 16
    0
      cmSymTbl.c
  2. 3
    0
      cmSymTbl.h

+ 16
- 0
cmSymTbl.c View File

@@ -261,6 +261,22 @@ unsigned    cmSymTblRegisterSymbol(       cmSymTblH_t h, const char* label )
261 261
 unsigned    cmSymTblRegisterStaticSymbol( cmSymTblH_t h, const char* label )
262 262
 { return cmSymTblRegister( h, label, true ); }
263 263
 
264
+unsigned    cmSymTblRegisterVFmt( cmSymTblH_t h, const cmChar_t* fmt, va_list vl )
265
+{
266
+  unsigned n = vsnprintf(NULL,0,fmt,vl);
267
+  cmChar_t b[n+1];
268
+  vsnprintf(b,n,fmt,vl);
269
+  return cmSymTblRegister(h,fmt,vl);
270
+
271
+}
272
+
273
+unsigned    cmSymTblRegisterFmt( cmSymTblH_t h, const cmChar_t* fmt, ... )
274
+{
275
+  va_list vl;
276
+  va_start(vl,fmt);
277
+  cmSymTblRegisterVFmt(h,fmt,vl);
278
+  va_end(vl);
279
+}
264 280
 
265 281
 
266 282
 bool        cmSymTblRemove( cmSymTblH_t h, unsigned symId )

+ 3
- 0
cmSymTbl.h View File

@@ -37,6 +37,9 @@ extern "C" {
37 37
   unsigned    cmSymTblRegisterSymbol( cmSymTblH_t h, const char* label );
38 38
   unsigned    cmSymTblRegisterStaticSymbol( cmSymTblH_t h, const char* label );
39 39
 
40
+  unsigned    cmSymTblRegisterVFmt( cmSymTblH_t h, const cmChar_t* fmt, va_list vl );
41
+  unsigned    cmSymTblRegisterFmt( cmSymTblH_t h, const cmChar_t* fmt, ... );
42
+
40 43
   bool        cmSymTblRemove(    cmSymTblH_t h, unsigned symId );
41 44
 
42 45
   // Given a symbol id return the associated label.

Loading…
Cancel
Save