Back to index

lightning-sunbird  0.9+nobinonly
Public Types | Public Member Functions | Public Attributes
nsXPTType Class Reference

#include <xptinfo.h>

Inheritance diagram for nsXPTType:
Inheritance graph
[legend]
Collaboration diagram for nsXPTType:
Collaboration graph
[legend]

List of all members.

Public Types

enum  {
  T_I8 = TD_INT8, T_I16 = TD_INT16, T_I32 = TD_INT32, T_I64 = TD_INT64,
  T_U8 = TD_UINT8, T_U16 = TD_UINT16, T_U32 = TD_UINT32, T_U64 = TD_UINT64,
  T_FLOAT = TD_FLOAT, T_DOUBLE = TD_DOUBLE, T_BOOL = TD_BOOL, T_CHAR = TD_CHAR,
  T_WCHAR = TD_WCHAR, T_VOID = TD_VOID, T_IID = TD_PNSIID, T_DOMSTRING = TD_DOMSTRING,
  T_CHAR_STR = TD_PSTRING, T_WCHAR_STR = TD_PWSTRING, T_INTERFACE = TD_INTERFACE_TYPE, T_INTERFACE_IS = TD_INTERFACE_IS_TYPE,
  T_ARRAY = TD_ARRAY, T_PSTRING_SIZE_IS = TD_PSTRING_SIZE_IS, T_PWSTRING_SIZE_IS = TD_PWSTRING_SIZE_IS, T_UTF8STRING = TD_UTF8STRING,
  T_CSTRING = TD_CSTRING, T_ASTRING = TD_ASTRING
}

Public Member Functions

 nsXPTType ()
 nsXPTType (const XPTTypeDescriptorPrefix &prefix)
 nsXPTType (const uint8 &prefix)
nsXPTTypeoperator= (uint8 val)
nsXPTTypeoperator= (const nsXPTType &other)
 operator uint8 () const
PRBool IsPointer () const
PRBool IsUniquePointer () const
PRBool IsReference () const
PRBool IsArithmetic () const
PRBool IsInterfacePointer () const
PRBool IsArray () const
PRBool IsDependent () const
uint8 TagPart () const

Public Attributes

PRUint8 flags

Detailed Description

Definition at line 91 of file xptinfo.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
T_I8 
T_I16 
T_I32 
T_I64 
T_U8 
T_U16 
T_U32 
T_U64 
T_FLOAT 
T_DOUBLE 
T_BOOL 
T_CHAR 
T_WCHAR 
T_VOID 
T_IID 
T_DOMSTRING 
T_CHAR_STR 
T_WCHAR_STR 
T_INTERFACE 
T_INTERFACE_IS 
T_ARRAY 
T_PSTRING_SIZE_IS 
T_PWSTRING_SIZE_IS 
T_UTF8STRING 
T_CSTRING 
T_ASTRING 

Definition at line 155 of file xptinfo.h.


Constructor & Destructor Documentation

nsXPTType::nsXPTType ( ) [inline]

Definition at line 95 of file xptinfo.h.

        {}    // random contents

Definition at line 97 of file xptinfo.h.

        {*(XPTTypeDescriptorPrefix*)this = prefix;}
nsXPTType::nsXPTType ( const uint8 prefix) [inline]

Definition at line 100 of file xptinfo.h.

        {*(uint8*)this = prefix;}

Member Function Documentation

PRBool nsXPTType::IsArithmetic ( ) const [inline]

Definition at line 121 of file xptinfo.h.

        {return flags <= T_WCHAR;}

Here is the caller graph for this function:

PRBool nsXPTType::IsArray ( ) const [inline]

Definition at line 134 of file xptinfo.h.

        {return (PRBool) TagPart() == T_ARRAY;}

Here is the caller graph for this function:

PRBool nsXPTType::IsDependent ( ) const [inline]

Definition at line 140 of file xptinfo.h.

        {  switch (TagPart()) {
             default:
               return PR_FALSE;
             case T_INTERFACE_IS:
             case TD_ARRAY:
             case T_PSTRING_SIZE_IS:
             case T_PWSTRING_SIZE_IS:
               return PR_TRUE;
           }
        }

Here is the caller graph for this function:

Definition at line 124 of file xptinfo.h.

        {  switch (TagPart()) {
             default:
               return PR_FALSE;
             case T_INTERFACE:
             case T_INTERFACE_IS:
               return PR_TRUE;
           }
        }

Here is the caller graph for this function:

PRBool nsXPTType::IsPointer ( ) const [inline]

Definition at line 112 of file xptinfo.h.

        {return 0 != (XPT_TDP_IS_POINTER(flags));}

Here is the caller graph for this function:

PRBool nsXPTType::IsReference ( ) const [inline]

Definition at line 118 of file xptinfo.h.

        {return 0 != (XPT_TDP_IS_REFERENCE(flags));}

Here is the caller graph for this function:

PRBool nsXPTType::IsUniquePointer ( ) const [inline]

Definition at line 115 of file xptinfo.h.

        {return 0 != (XPT_TDP_IS_UNIQUE_POINTER(flags));}
nsXPTType::operator uint8 ( ) const [inline]

Definition at line 109 of file xptinfo.h.

        {return flags;}
nsXPTType& nsXPTType::operator= ( uint8  val) [inline]

Definition at line 103 of file xptinfo.h.

        {flags = val; return *this;}
nsXPTType& nsXPTType::operator= ( const nsXPTType other) [inline]

Definition at line 106 of file xptinfo.h.

        {flags = other.flags; return *this;}
uint8 nsXPTType::TagPart ( ) const [inline]

Definition at line 152 of file xptinfo.h.

        {return (uint8) (flags & XPT_TDP_TAGMASK);}

Here is the caller graph for this function:


Member Data Documentation

Definition at line 333 of file xpt_struct.h.


The documentation for this class was generated from the following file: