summaryrefslogtreecommitdiffstats
path: root/src/libs/xpcom18a4/vboxdeps.cpp
blob: 37f70bba22cdf221d2f40c609981b1fcbbdfd5e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
/* The usual story: drag stuff from the libraries into the link. */


#include <plstr.h>
#include <prio.h>
#include <nsDeque.h>
#include <nsHashSets.h>
#include <nsIPipe.h>
#include <xptcall.h>
#include <nsProxyRelease.h>
#include "xpcom/proxy/src/nsProxyEventPrivate.h"
#include "nsTraceRefcnt.h"
#include "nsDebug.h"

uintptr_t deps[] =
{
    (uintptr_t)PL_strncpy,
    (uintptr_t)PL_strchr,
    (uintptr_t)PL_strncpyz,
    (uintptr_t)PL_HashString,
    (uintptr_t)PR_DestroyPollableEvent,
    (uintptr_t)NS_NewPipe2,
    (uintptr_t)NS_ProxyRelease,
    (uintptr_t)nsTraceRefcnt::LogRelease,
    (uintptr_t)nsDebug::Assertion,
    0
};

class foobardep : public nsXPTCStubBase
{
public:
    NS_IMETHOD_(nsrefcnt) AddRef(void)
    {
        return 1;
    }

    NS_IMETHOD_(nsrefcnt) Release(void)
    {
        return 0;
    }

    NS_IMETHOD GetInterfaceInfo(nsIInterfaceInfo** info)
    {
        (void)info;
        return 0;
    }

    // call this method and return result
    NS_IMETHOD CallMethod(PRUint16 methodIndex, const nsXPTMethodInfo* info, nsXPTCMiniVariant* params)
    {
        (void)methodIndex;
        (void)info;
        (void)params;
        return 0;
    }

};



void foodep(void)
{
    nsVoidHashSetSuper *a = new nsVoidHashSetSuper();
    a->Init(123);
    nsDeque *b = new nsDeque((nsDequeFunctor*)0);

    //nsXPTCStubBase
    nsProxyEventObject *c = new nsProxyEventObject();
    c->Release();

    foobardep *d = new foobardep();
    nsXPTCStubBase *e = d;
    e->Release();
}