context: function formatTypeName(info, methodIndex, param, dimension) {    var type = info.getTypeForParam(methodIndex, param, dimension);         switch(type.dataType)    {        case nsIDataType.VTYPE_INT8 :            return "PRInt8";        case nsIDataType.VTYPE_INT16:            return "PRInt16";        case nsIDataType.VTYPE_INT32:            return "PRInt32";        case nsIDataType.VTYPE_INT64:            return "PRInt64";        case nsIDataType.VTYPE_UINT8:            return "PRUint8";        case nsIDataType.VTYPE_UINT16:            return "PRUint16";        case nsIDataType.VTYPE_UINT32:            return "PRUint32";        case nsIDataType.VTYPE_UINT64:            return "PRUint64";        case nsIDataType.VTYPE_FLOAT:            return "float";        case nsIDataType.VTYPE_DOUBLE:            return "double";        case nsIDataType.VTYPE_BOOL:            return "PRBool";        case nsIDataType.VTYPE_CHAR:            return "char";        case nsIDataType.VTYPE_WCHAR:            return "PRUnichar";        case nsIDataType.VTYPE_VOID:            if(type.isPointer)                return "voidPtr";            return "void";        case nsIDataType.VTYPE_ID:            // order matters here...            if(type.isReference)                return "nsIDRef";            if(type.isPointer)                return "nsIDPtr";            return "nsID";        case nsIDataType.VTYPE_DOMSTRING:            return "DOMString";        case nsIDataType.VTYPE_CHAR_STR:            return "string";        case nsIDataType.VTYPE_WCHAR_STR:            return "wstring";        case nsIDataType.VTYPE_INTERFACE:            try  {                return info.getInfoForParam(methodIndex, param).name;            } catch(e) {                return "/*!!! missing interface info, guessing!!!*/ nsISupports";                }        case nsIDataType.VTYPE_INTERFACE_IS:            return "nsQIResult";        case nsIDataType.VTYPE_ARRAY:            return formatTypeName(info, methodIndex, param, dimension+1);         case nsIDataType.VTYPE_STRING_SIZE_IS:            return "string";        case nsIDataType.VTYPE_WSTRING_SIZE_IS:            return "wstring";        case nsIDataType.VTYPE_UTF8STRING:            return "AUTF8String";        case nsIDataType.VTYPE_CSTRING:            return "ACString";        case nsIDataType.VTYPE_ASTRING:            return "AString";        default:            return "!!!! bad data type !!!";    }}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/55a5e5ddbf4a7e9103b995d808c4466085d2123f/nsInterfaceInfoToIDL.js/clean/extensions/webservices/interfaceinfo/src/nsInterfaceInfoToIDL.js