⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nls.h

📁 IBM Lotus C++ API 7.0a for IBM Lotus Notes/Domino Directory Release --------- ------------------
💻 H
📖 第 1 页 / 共 2 页
字号:

#if defined(OS400) && (__OS400_TGTVRM__ >= 510)
#pragma datamodel(P128)
#endif

/*********************************************************************/
/*                                                                   */
/* Licensed Materials - Property of IBM                              */
/*                                                                   */
/* L-GHUS-5VMPGW, L-GHUS-5S3PEE                                      */
/* (C) Copyright IBM Corp. 1995, 2005  All Rights Reserved           */
/*                                                                   */
/* US Government Users Restricted Rights - Use, duplication or       */
/* disclosure restricted by GSA ADP Schedule Contract with           */
/* IBM Corp.                                                         */
/*                                                                   */
/*********************************************************************/




#if   !defined(NLS_H)
#define  NLS_H

#ifdef __cplusplus
extern "C" {
#endif


/********************************************************************
**                TYPES AND DEFINITIONS
*/

typedef  WORD  NLS_STATUS;
            
typedef void NLS_INFO;        
typedef void far *NLS_PINFO;        

/********************************************************************
**                PROTOS
*/

NLS_STATUS  LNPUBLIC NLS_load_charset     (WORD CSID,
                                    NLS_PINFO FAR *   ppInfo);

NLS_STATUS  LNPUBLIC NLS_unload_charset      (NLS_PINFO     pInfo);

NLS_STATUS  LNPUBLIC    NLS_translate        (BYTE far *       pString, 
                                       WORD           Len, 
                                       BYTE far *        pStringTarget, 
                                       WORD far *        pSize, 
                                       WORD           ControlFlags,
                                       NLS_PINFO         pInfo);

NLS_STATUS LNPUBLIC     NLS_find          (BYTE far * far *    ppString, 
                                       WORD           Len, 
                                       const BYTE far *        pSetOfChars, 
                                       WORD           ControlFlags,
                                       NLS_PINFO         pInfo);

NLS_STATUS LNPUBLIC     NLS_find_substr      (BYTE far * far *    ppString, 
                                       WORD           Len1, 
                                       const BYTE far *        pSubString, 
                                       WORD           Len2, 
                                       NLS_PINFO         pInfo);

NLS_STATUS LNPUBLIC     NLS_get           (BYTE far * far *    ppString, 
                                    WORD           Len, 
                                    BYTE far *        pCharacter, 
                                    NLS_PINFO         pInfo);

WORD     LNPUBLIC NLS_goto_next        (BYTE far * far *    ppString, 
                                    WORD           Len,
                                    NLS_PINFO         pInfo);

WORD     LNPUBLIC NLS_goto_prev        (BYTE far * far *    ppString, 
                                    const BYTE far *        pStrStart, 
                                    NLS_PINFO         pInfo);
WORD     LNPUBLIC NLS_goto_next_word_end  (BYTE far * far *    ppString, 
                                    WORD           Len, 
                                    NLS_PINFO         pInfo);

WORD     LNPUBLIC NLS_goto_next_word_start(BYTE far * far *    ppString, 
                                    WORD           Len, 
                                    NLS_PINFO         pInfo);

WORD     LNPUBLIC NLS_goto_next_break  (BYTE far * far *    ppString,
                                    WORD              Len,
                                    NLS_PINFO         pInfo);

WORD     LNPUBLIC NLS_goto_prev_word_end  (BYTE far * far *    ppString, 
                                    const BYTE far *        pStrStart, 
                                    NLS_PINFO         pInfo);

WORD     LNPUBLIC NLS_goto_prev_word_start(BYTE far * far *    ppString, 
                                    const BYTE far *        pStrStart, 
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isalpha          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isalnum          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isarith          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_iscntrl          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isdigit          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_islower          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_ispunct          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isspace          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isupper          (const BYTE far *       pCharacter,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_isleadbyte          (BYTE          Character,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_string_chars     (const BYTE far *       pString, 
                                    WORD           NumBytes,
                                    WORD far *        pNumChars,
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC NLS_string_bytes     (const BYTE far *       pString,
                                    WORD           NumChars,
                                    WORD far *        pNumBytes,
                                    NLS_PINFO         pInfo);
NLS_STATUS  LNPUBLIC    NLS_put           (BYTE far * far *    ppString, 
                                    const BYTE far *        pCharacter, 
                                    NLS_PINFO         pInfo);

NLS_STATUS  LNPUBLIC    NLS_put_term         (BYTE far * far *    ppString, 
                                    const BYTE far *        pCharacter, 
                                    NLS_PINFO         pInfo);

/********************************************************************
**             RETURN CODES
*/
                           
#define  NLS_SUCCESS             0x0
#define  NLS_BADPARM             0xABAD 
#define  NLS_BUFFERTOOSMALL         0xA000 
#define  NLS_CHARSSTRIPPED          0x1000 
#define  NLS_ENDOFSTRING            0x1001 
#define  NLS_FALLBACKUSED        0x1002 
#define  NLS_FILEINVALID            0xA001 
#define  NLS_FILENOTFOUND        0xA002 
#define  NLS_FINDFAILED          0x1005
#define  NLS_INVALIDCHARACTER    0xA003 
#define  NLS_INVALIDDATA            0xA004 
#define  NLS_INVALIDENTRY        0xA005 
#define  NLS_INVALIDTABLE        0xA006 
#define  NLS_PROPNOTFOUND        0x1003 
#define  NLS_STARTOFSTRING          0x1004 
#define  NLS_STRINGSIZECHANGED         0x1006 
#define  NLS_TABLEHEADERINVALID     0xA007 
#define  NLS_TABLENOTFOUND       0x1007 

/********************************************************************
**                FLAGS
*/

/*    NLS_find */
#define  NLS_FIND_CHARINSET            1
#define  NLS_FIND_CHARNOTINSET      2
/*    NLS_translate */

#define  NLS_NONULLTERMINATE        0x1
#define  NLS_NULLTERMINATE       0x2
#define  NLS_STRIPUNKNOWN        0x4
#define  NLS_TARGETISLMBCS       0x8
#define  NLS_SOURCEISLMBCS       0x10
#define  NLS_TARGETISUNICODE        0x20
#define  NLS_SOURCEISUNICODE        0x40
#define  NLS_TARGETISPLATFORM    0x80
#define  NLS_SOURCEISPLATFORM    0x100


/********************************************************************
**                MISC DEFINES
*/

#define  NLS_NULLTERM         (WORD) -1
#define  NLS_NULLTERM32       (DWORD) -1

#define  NLS_SIZEOFNULL       1 /* for LMBCS implementation */

#define  NLS_MAXBYTESPERCHAR     3

#define  NLS_MAXBYTESPERCHAR_WITH_SURROGATE 6
#define  NLS_MAXRATIO_XLATE_FROM_LMBCS      4
#define  NLS_MAXRATIO_XLATE_TO_LMBCS        3


/********************************************************************
**                CHARACTER SET ID'S
*/

#if   !defined(NLS_NOCHARSETIDS)

#define NLS_CS_DEFAULT         0xFFFF
#define NLS_CS_LICS              0x0000 /* Lotus Intl Char Set (WK1) */
#define NLS_CS_IBMCP851          0x0001
#define NLS_CS_IBMCP852          0x0002
#define NLS_CS_IBMCP853          0x0003
#define NLS_CS_IBMCP857          0x0004
#define NLS_CS_IBMCP862          0x0005
#define NLS_CS_IBMCP864          0x0006
#define NLS_CS_IBMCP866          0x0007
#define NLS_CS_IBMCP437          0x0008
#define NLS_CS_IBMCP850          0x0009
#define NLS_CS_IBMCP855          0x000A
#define NLS_CS_IBMCP860          0x000B
#define NLS_CS_IBMCP861          0x000C
#define NLS_CS_IBMCP863          0x000D
#define NLS_CS_IBMCP865          0x000E
#define NLS_CS_IBMCP869          0x000F
#define NLS_CS_IBMCP874          0x0090
#define NLS_CS_IBMCP899          0x0011
#define NLS_CS_IBMCP932          0x0012
#define NLS_CS_IBMCP942          0x0012 /* 932  942 for Lotus */
#define NLS_CS_IBMCP943          0x0012
#define NLS_CS_IBMCP5039         0x0012
#define NLS_CS_IBMCP891          0x0013
#define NLS_CS_DECMCS            0x0014 /* DEC Multinational Char Set */

#define NLS_CS_EUC               0x0017 /* Extended Unix Code */
#define NLS_CS_KS                0x0018 /* Korean - KSC 5601 */
#define NLS_CS_IBMCP949          0x0018
#define NLS_CS_TCA               0x0019
#define NLS_CS_BIG5              0x001A /* Taiwan Chinese - traditional */
#define NLS_CS_IBMCP950          0x001A
#define NLS_CS_GB                 0x001B /* PRC Chinese - simplified */
#define NLS_CS_IBMCP936          0x001B
#define NLS_CS_NECESJIS          0x001C /* NEC Extended Shift-JIS */
#define NLS_CS_ISO646            0x001F /* aka 'ASCII' */
#define NLS_CS_ASCII             0x001F
#define NLS_CS_ISO88591          0x0020 /* ISO Latin-1 */
#define NLS_CS_IBMCP819          0x0020
#define NLS_CS_ISO88592          0x0021 /* ISO Latin-2 (E. Europe) */
#define NLS_CS_IBMCP912          0x0021
#define NLS_CS_ISO88593          0x0022
#define NLS_CS_ISO88594          0x0023
#define NLS_CS_ISO88595          0x0024
#define NLS_CS_IBMCP915          0x0024
#define NLS_CS_ISO88596          0x0025
#define NLS_CS_IBMCP1008         0x0025
#define NLS_CS_ISO88597          0x0026
#define NLS_CS_IBMCP813          0x0026
#define NLS_CS_ISO88598          0x0027
#define NLS_CS_IBMCP916          0x0027
#define NLS_CS_ISO88599          0x0028
#define NLS_CS_IBMCP920          0x0028

#define NLS_CS_HPROMAN           0x0030 /* HP Roman (LaserJet) */
#define NLS_CS_HPGREEK           0x0031 /* HP Roman (LaserJet) */
#define NLS_CS_HPTURKISH         0x0032 /* HP Roman (LaserJet) */
#define NLS_CS_HPHEBREW          0x0034
#define NLS_CS_HPARABIC          0x0035

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -