tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

tchar.h (4668B)


      1 /*
      2 * tchar.h
      3 * 
      4 * This file is a part of NSIS.
      5 * 
      6 * Copyright (C) 1999-2007 Nullsoft and Contributors
      7 * 
      8 * This software is provided 'as-is', without any express or implied
      9 * warranty.
     10 *
     11 * For Unicode support by Jim Park -- 08/30/2007
     12 */
     13 
     14 // Jim Park: Only those we use are listed here.
     15 
     16 #pragma once
     17 
     18 #ifdef _UNICODE
     19 
     20 #ifndef _T
     21 #define __T(x)   L ## x
     22 #define _T(x)    __T(x)
     23 #define _TEXT(x) __T(x)
     24 #endif
     25 typedef wchar_t TCHAR;
     26 typedef wchar_t _TUCHAR;
     27 
     28 // program
     29 #define _tmain      wmain
     30 #define _tWinMain   wWinMain
     31 #define _tenviron   _wenviron
     32 #define __targv     __wargv
     33 
     34 // printfs
     35 #define _ftprintf   fwprintf
     36 #define _sntprintf  _snwprintf
     37 #define _stprintf   _swprintf
     38 #define _tprintf    wprintf
     39 #define _vftprintf  vfwprintf
     40 #define _vsntprintf _vsnwprintf
     41 #define _vstprintf  _vswprintf
     42 
     43 // scanfs
     44 #define _tscanf     wscanf
     45 #define _stscanf    swscanf
     46 
     47 // string manipulations
     48 #define _tcscat     wcscat
     49 #define _tcschr     wcschr
     50 #define _tcsclen    wcslen
     51 #define _tcscpy     wcscpy
     52 #define _tcsdup     _wcsdup
     53 #define _tcslen     wcslen
     54 #define _tcsnccpy   wcsncpy
     55 #define _tcsncpy    wcsncpy
     56 #define _tcsrchr    wcsrchr
     57 #define _tcsstr     wcsstr
     58 #define _tcstok     wcstok
     59 
     60 // string comparisons
     61 #define _tcscmp     wcscmp
     62 #define _tcsicmp    _wcsicmp
     63 #define _tcsncicmp  _wcsnicmp
     64 #define _tcsncmp    wcsncmp
     65 #define _tcsnicmp   _wcsnicmp
     66 
     67 // upper / lower
     68 #define _tcslwr     _wcslwr
     69 #define _tcsupr     _wcsupr
     70 #define _totlower   towlower
     71 #define _totupper   towupper
     72 
     73 // conversions to numbers
     74 #define _tcstoi64   _wcstoi64
     75 #define _tcstol     wcstol
     76 #define _tcstoul    wcstoul
     77 #define _tstof      _wtof
     78 #define _tstoi      _wtoi
     79 #define _tstoi64    _wtoi64
     80 #define _ttoi       _wtoi
     81 #define _ttoi64     _wtoi64
     82 #define _ttol       _wtol
     83 
     84 // conversion from numbers to strings
     85 #define _itot       _itow
     86 #define _ltot       _ltow
     87 #define _i64tot     _i64tow
     88 #define _ui64tot    _ui64tow
     89 
     90 // file manipulations
     91 #define _tfopen     _wfopen
     92 #define _topen      _wopen
     93 #define _tremove    _wremove
     94 #define _tunlink    _wunlink
     95 
     96 // reading and writing to i/o
     97 #define _fgettc     fgetwc
     98 #define _fgetts     fgetws
     99 #define _fputts     fputws
    100 #define _gettchar   getwchar
    101 
    102 // directory
    103 #define _tchdir     _wchdir
    104 
    105 // environment
    106 #define _tgetenv    _wgetenv
    107 #define _tsystem    _wsystem
    108 
    109 // time
    110 #define _tcsftime   wcsftime
    111 
    112 #else // ANSI
    113 
    114 #ifndef _T
    115 #define _T(x)    x
    116 #define _TEXT(x) x
    117 #endif
    118 typedef char            TCHAR;
    119 typedef unsigned char   _TUCHAR;
    120 
    121 // program
    122 #define _tmain      main
    123 #define _tWinMain   WinMain
    124 #define _tenviron   environ
    125 #define __targv     __argv
    126 
    127 // printfs
    128 #define _ftprintf   fprintf
    129 #define _sntprintf  _snprintf
    130 #define _stprintf   sprintf
    131 #define _tprintf    printf
    132 #define _vftprintf  vfprintf
    133 #define _vsntprintf _vsnprintf
    134 #define _vstprintf  vsprintf
    135 
    136 // scanfs
    137 #define _tscanf     scanf
    138 #define _stscanf    sscanf
    139 
    140 // string manipulations
    141 #define _tcscat     strcat
    142 #define _tcschr     strchr
    143 #define _tcsclen    strlen
    144 #define _tcscnlen   strnlen
    145 #define _tcscpy     strcpy
    146 #define _tcsdup     _strdup
    147 #define _tcslen     strlen
    148 #define _tcsnccpy   strncpy
    149 #define _tcsrchr    strrchr
    150 #define _tcsstr     strstr
    151 #define _tcstok     strtok
    152 
    153 // string comparisons
    154 #define _tcscmp     strcmp
    155 #define _tcsicmp    _stricmp
    156 #define _tcsncmp    strncmp
    157 #define _tcsncicmp  _strnicmp
    158 #define _tcsnicmp   _strnicmp
    159 
    160 // upper / lower
    161 #define _tcslwr     _strlwr
    162 #define _tcsupr     _strupr
    163 
    164 #define _totupper   toupper
    165 #define _totlower   tolower
    166 
    167 // conversions to numbers
    168 #define _tcstol     strtol
    169 #define _tcstoul    strtoul
    170 #define _tstof      atof
    171 #define _tstoi      atoi
    172 #define _tstoi64    _atoi64
    173 #define _tstoi64    _atoi64
    174 #define _ttoi       atoi
    175 #define _ttoi64     _atoi64
    176 #define _ttol       atol
    177 
    178 // conversion from numbers to strings
    179 #define _i64tot     _i64toa
    180 #define _itot       _itoa
    181 #define _ltot       _ltoa
    182 #define _ui64tot    _ui64toa
    183 
    184 // file manipulations
    185 #define _tfopen     fopen
    186 #define _topen      _open
    187 #define _tremove    remove
    188 #define _tunlink    _unlink
    189 
    190 // reading and writing to i/o
    191 #define _fgettc     fgetc
    192 #define _fgetts     fgets
    193 #define _fputts     fputs
    194 #define _gettchar   getchar
    195 
    196 // directory
    197 #define _tchdir     _chdir
    198 
    199 // environment
    200 #define _tgetenv    getenv
    201 #define _tsystem    system
    202 
    203 // time
    204 #define _tcsftime   strftime
    205 
    206 #endif
    207 
    208 // is functions (the same in Unicode / ANSI)
    209 #define _istgraph   isgraph
    210 #define _istascii   __isascii