home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / js / src / jsprvtd.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  2.6 KB  |  66 lines

  1. /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  *
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18.  
  19. #ifndef jsprvtd_h___
  20. #define jsprvtd_h___
  21. /*
  22.  * JS private typename definitions.
  23.  *
  24.  * This header is included only in other .h files, for convenience and for
  25.  * simplicity of type naming.  The alternative for structures is to use tags,
  26.  * which are named the same as their typedef names (legal in C/C++, and less
  27.  * noisy than suffixing the typedef name with "Struct" or "Str").  Instead,
  28.  * all .h files that include this file may use the same typedef name, whether
  29.  * declaring a pointer to struct type, or defining a member of struct type.
  30.  *
  31.  * A few fundamental scalar types are defined here too.  Neither the scalar
  32.  * nor the struct typedefs should change much, therefore the nearly-global
  33.  * make dependency induced by this file should not prove painful.
  34.  */
  35.  
  36. /* Scalar typedefs. */
  37. typedef uint8  jsbytecode;
  38. typedef uint8  jssrcnote;
  39. typedef int32  jsrefcount;
  40. typedef uint32 jsatomid;
  41.  
  42. /* Struct typedefs. */
  43. typedef struct JSCodeGenerator  JSCodeGenerator;
  44. typedef struct JSGCThing        JSGCThing;
  45. typedef struct JSToken          JSToken;
  46. typedef struct JSTokenStream    JSTokenStream;
  47.  
  48. /* Friend "Advanced API" typedefs. */
  49. typedef struct JSAtom           JSAtom;
  50. typedef struct JSAtomList       JSAtomList;
  51. typedef struct JSAtomMap        JSAtomMap;
  52. typedef struct JSAtomState      JSAtomState;
  53. typedef struct JSCodeSpec       JSCodeSpec;
  54. typedef struct JSPrinter        JSPrinter;
  55. typedef struct JSProperty       JSProperty;
  56. typedef struct JSRegExp         JSRegExp;
  57. typedef struct JSRegExpStatics  JSRegExpStatics;
  58. typedef struct JSScope          JSScope;
  59. typedef struct JSScopeOps       JSScopeOps;
  60. typedef struct JSStackFrame     JSStackFrame;
  61. typedef struct JSSubString      JSSubString;
  62. typedef struct JSSymbol         JSSymbol;
  63. typedef struct JSSharpObjectMap JSSharpObjectMap;
  64.  
  65. #endif /* jsprvtd_h___ */
  66.