Diff for /parser3/src/include/pa_common.h between versions 1.56 and 1.67

version 1.56, 2001/10/25 13:17:53 version 1.67, 2001/12/07 15:24:46
Line 2 Line 2
         Parser: commonly used functions.          Parser: commonly used functions.
   
         Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)          Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
         Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)          Author: Alexander Petrosyan <paf@design.ru> (http://paf.design.ru)
   
         $Id$          $Id$
 */  */
Line 16 Line 16
   
 class Value;  class Value;
   
   // replace system s*nprintf with our versions
   #undef vsnpritnf
   int __vsnprintf(char *, size_t, const char *, va_list);
   #define vsnprintf __vsnprintf 
   #undef snprintf
   int __snprintf(char *, size_t, const char *, ...);
   #define snprintf __snprintf
   
 #if _MSC_VER  #if _MSC_VER
 /*  /*
 inline int open( const char *filename, int oflag ) { return _open(filename, oflag); }  inline int open( const char *filename, int oflag ) { return _open(filename, oflag); }
Line 26  inline int stat( const char *path, struc Line 34  inline int stat( const char *path, struc
 inline long lseek( int handle, long offset, int origin ) { return _lseek(handle, offset, origin); }  inline long lseek( int handle, long offset, int origin ) { return _lseek(handle, offset, origin); }
 */  */
   
 #ifndef vsnprintf  
 int __vsnprintf(char *, size_t, const char *, va_list);  
 #       define vsnprintf __vsnprintf   
 #endif  
 #ifndef snprintf  
 int __snprintf(char *, size_t, const char *, ...);  
 #       define snprintf __snprintf  
 #endif  
   
 //access  //access
 #define F_OK 0  #define F_OK 0
 #define X_OK 1  #define X_OK 1
Line 57  int __snprintf(char *, size_t, const cha Line 56  int __snprintf(char *, size_t, const cha
   
 #endif  #endif
   
   #ifdef HAVE_TRUNC
   #       ifndef trunc
   extern "C" double trunc(double);
   #       endif
   #else
   inline double trunc(double param) { return param > 0? floor(param) : ceil(param); }
   #endif
   
   #ifdef HAVE_ROUND
   #       ifndef round
   extern "C" double round(double);
   #       endif
   #else
   inline double round(double param) { return floor(param+0.5); }
   #endif
   #ifdef HAVE_SIGN
   #       ifndef sign
   extern "C" double sign(double);
   #       endif
   #else
   inline double sign(double param) { return param > 0 ? 1 : ( param < 0 ? -1 : 0 ); }
   #endif
   
   
 /** under WIN32 "t" mode fixes DOS chars OK,   /** under WIN32 "t" mode fixes DOS chars OK, 
         can't say that about other systems/ line break styles          can't say that about other systems/ line break styles
 */  */
 void fix_line_breaks(char *src, size_t& size);  void fix_line_breaks(
                                            char *buf,
                                            size_t& size ///< may change! used to speedup next actions
                                            );
   
 /**  /**
         read specified text file using pool,           read specified text file using pool, 
Line 87  bool file_read(Pool& pool, const String& Line 113  bool file_read(Pool& pool, const String&
 void file_write(Pool& pool,   void file_write(Pool& pool, 
                                 const String& file_spec,                                  const String& file_spec,
                                 const void *data, size_t size,                                   const void *data, size_t size, 
                                 bool as_text/*,                                  bool as_text,
                                 bool exclusive=false*/);                                  bool do_append=false);
   
 /**  /**
         delete specified file           delete specified file 
         throws an exception in case of problems          throws an exception in case of problems
 */  */
 void file_delete(Pool& pool, const String& file_spec);  bool file_delete(Pool& pool, const String& file_spec, bool fail_on_read_problem=true);
 /**  /**
         move specified file           move specified file 
         throws an exception in case of problems          throws an exception in case of problems

Removed from v.1.56  
changed lines
  Added in v.1.67


E-mail: