Digi XBee(R) ANSI C Host Library
jslong_glue.h
1 /*
2  * Copyright (c) 2010-2012 Digi International Inc.,
3  * All rights not expressly granted are reserved.
4  *
5  * This Source Code Form is subject to the terms of the Mozilla Public
6  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
7  * You can obtain one at http://mozilla.org/MPL/2.0/.
8  *
9  * Digi International Inc. 11001 Bren Road East, Minnetonka, MN 55343
10  * =======================================================================
11  */
12 
13 // glue for jslong.h/jslong.c
14 // automatically included at the end of xbee/platform.h
15 // *** Do not #include this file directly. **
16 
17 #ifndef XBEE_JSLONG_GLUE_H
18 #define XBEE_JSLONG_GLUE_H
19 
20 #ifdef XBEE_NATIVE_64BIT
21  #define JS_HAVE_LONG_LONG
22  // NOTE: Your code should never access these types as integral types
23  // (i.e., don't use unary or binary operators on them) since some
24  // platforms implement them as structures.
25  typedef int64_t JSInt64;
26  typedef uint64_t JSUint64;
27 #else
28  // NOTE: Your code should never access .lo and .hi directly, since some
29  // platforms will be using an actual 64-bit integer.
30  typedef struct {
31  #if BYTE_ORDER == LITTLE_ENDIAN
32  uint32_t lo, hi;
33  #else
34  uint32_t hi, lo;
35  #endif
36  } JSInt64;
37  typedef JSInt64 JSUint64;
38 #endif
39 
40 typedef int32_t JSInt32;
41 typedef uint32_t JSUint32;
42 
43 #if (BYTE_ORDER == LITTLE_ENDIAN)
44  #define IS_LITTLE_ENDIAN
45 #endif
46 
47 #include "xbee/jslong.h"
48 
49 // xbee_platform_rabbit.c includes the #use for jslong.c, no need for it here
50 
51 #endif // ! defined XBEE_JSLONG_GLUE_H
unsigned long uint32_t
32-bit unsigned integer
Definition: platform_config.h:43
Definition: jslong_glue.h:30
long int32_t
32-bit signed integer
Definition: platform_config.h:42