Back to index

lightning-sunbird  0.9+nobinonly
Static Public Member Functions | Private Member Functions | Private Attributes
Mozilla.XPCOM.CLRWrapper Class Reference

List of all members.

Static Public Member Functions

static IntPtr Wrap (object o, ref Guid iid)

Private Member Functions

int InvokeMethod (int index, IntPtr args)
 CLRWrapper (object o, ref Guid iid)
delegate int MethodInvoker (int index, IntPtr args)
static IntPtr WrapCLRObject (MethodInvoker del, ref Guid iid)
IntPtr MakeXPCOMProxy ()

Private Attributes

object wrappedObj
Guid wrappedAsIID

Detailed Description

Definition at line 14 of file wrapped-clr.cs.

Constructor & Destructor Documentation

Mozilla.XPCOM.CLRWrapper.CLRWrapper ( object  o,
ref Guid  iid 
) [inline, private]

Definition at line 36 of file wrapped-clr.cs.

Member Function Documentation

int Mozilla.XPCOM.CLRWrapper.InvokeMethod ( int  index,
IntPtr  args 
) [inline, private]

Definition at line 22 of file wrapped-clr.cs.

        Console.WriteLine("invoking method {0} on {1}", index,
        MethodDescriptor desc = TypeInfo.GetMethodData(wrappedAsIID, index);
        Type ifaceType = TypeInfo.TypeForIID(wrappedAsIID);
        // Console.WriteLine("ifaceType: {0}", ifaceType);
        MethodInfo meth = ifaceType.GetMethod(;
        // Console.WriteLine("meth: {0}", meth);
        // This might just throw on you, if it's not a void-taking method
        meth.Invoke(wrappedObj, new object[0]);
        return 0;

Here is the call graph for this function:

IntPtr Mozilla.XPCOM.CLRWrapper.MakeXPCOMProxy ( ) [inline, private]

Definition at line 50 of file wrapped-clr.cs.

Here is the call graph for this function:

Here is the caller graph for this function:

delegate int Mozilla.XPCOM.CLRWrapper.MethodInvoker ( int  index,
IntPtr  args 
) [private]
static IntPtr Mozilla.XPCOM.CLRWrapper.Wrap ( object  o,
ref Guid  iid 
) [inline, static]

Definition at line 16 of file wrapped-clr.cs.

        CLRWrapper wrapper = new CLRWrapper(o, ref iid);
        return wrapper.MakeXPCOMProxy();

Here is the call graph for this function:

Here is the caller graph for this function:

static IntPtr Mozilla.XPCOM.CLRWrapper.WrapCLRObject ( MethodInvoker  del,
ref Guid  iid 
) [private]

Member Data Documentation

Definition at line 43 of file wrapped-clr.cs.

Definition at line 42 of file wrapped-clr.cs.

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