Package com4j.tlbimp.def

Examples of com4j.tlbimp.def.IDispInterfaceDecl


                if (m.getParamCount() != 1 || mb.retParam != 0 || mb.params[mb.retParam].isIn())
                    break;

                // we expect it to be an interface pointer.
                IPtrType pt = mb.returnType.queryInterface(IPtrType.class);
                IDispInterfaceDecl di = null;
                IInterfaceDecl ii = null;
                if (pt != null) {
                    IType t = pt.getPointedAtType();
                    di = t.queryInterface(IDispInterfaceDecl.class);
                    ii = t.queryInterface(IInterfaceDecl.class);
                }

                if (di == null && ii == null)
                    break;

                IInterface intf;
                if (ii != null) {
                    intf = ii;
                } else {
                    if(di.isDual())
                        intf = di.getVtblInterface();
                    else
                        break;
                }

                // does this target interface has a default method?
View Full Code Here


        ITypeDecl t = impl.getType();
        IInterfaceDecl ii = t.queryInterface(IInterfaceDecl.class);
        if(ii!=null)
            return ii;    // this is a custom interface

        IDispInterfaceDecl di = t.queryInterface(IDispInterfaceDecl.class);
        if(di.isDual())
            return di.getVtblInterface();

        return null;   // disp-only. can't handle it now.
    }
View Full Code Here

                        if(def.getKind()==TypeKind.DISPATCH ) {
                            // if the alias is defined against dispinterface,
                            // also define the same typedef for 'interface'

                            IDispInterfaceDecl dispi = def.queryInterface(IDispInterfaceDecl.class);
                            if(dispi.isDual()) {
                                IInterfaceDecl custitf = dispi.getVtblInterface();
                                aliases.put(custitf, typedef.getName());
                            }
                        }
                    }
                }
View Full Code Here

            else
                return name;
        }

        private GUID getGUID(ITypeDecl decl) {
            IDispInterfaceDecl di = decl.queryInterface(IDispInterfaceDecl.class);
            if(di!=null)
                return di.getGUID();

            IInterfaceDecl ii = decl.queryInterface(IInterfaceDecl.class);
            if(ii!=null)
                return ii.getGUID();
View Full Code Here

            for( int i=0; i<len; i++ ) {
                IImplementedInterfaceDecl item = co.getImplementedInterface(i);
                if(item.isSource()) {
                    ITypeDecl it = item.getType();
                    if(eventInterfaces.add(it)) {
                        IDispInterfaceDecl di = it.queryInterface(IDispInterfaceDecl.class);
                        if(di!=null)    // can this ever be null?
                            new EventInterfaceGenerator(this,di).generate();
                    }
                }
            }
View Full Code Here

            if( compDecl!=null ) {
                // t = T* where T is a declared interface
                return new TypeBinding( g.getTypeName(compDecl), NativeType.ComObject, true );
            }

            IDispInterfaceDecl dispDecl = comp.queryInterface(IDispInterfaceDecl.class);
            if( dispDecl!=null ) {
                // t = T* where T is a declared interface
                return new TypeBinding( g.getTypeName(dispDecl), NativeType.ComObject,  true );
            }

View Full Code Here

TOP

Related Classes of com4j.tlbimp.def.IDispInterfaceDecl

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.