Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-dev] Confusion again.
  • From: Ming Cheng <chengm349@xxxxxxxxxxx>
  • Date: Mon, 2 Mar 2020 10:32:20 +0000
  • Accept-language: en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LwURWPYDbdmOzl7Q1kvO7r4VCE77+SzWCkVOGh9DtCU=; b=gT2QdKnfKEUZnRo/a3+hze65xufYu8PRH/gam+eC9OnFliAZk5VHnaSzC0K981zU8tFAxNPdPsv2dA1Tx1o1JrtMIPDCCCTbhiIb6C62021GkjvAZ5I+iD/zBL604bmw9M/3L6h1HToyhU+VcGDxACs93PrmcV4HTBRke20CfaCn0IVBCvuEPCKAp46bHnZefDKu3EtKhZFwltXs8hh2iNlg+v8jpsxR+btYlfqfoVAc9VMiO5ZRuXt0espmAPRxAGfehU5GMZGadGoowyK1iAIgcNHtoPKqOfvJjOQa2TDjBaSKBQm59dkk2BQkU+Cx7yWLKL3LQ/MDGbQyyVndvQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MVbnjS6pUCRcHnr/rYmhy6enP0lpa+GiFLtthaA+QfpOy0ojpzzdBIj/BmGR9oq5EIIvNQSCefInsaEYfKOCWyXUxahsT/oTn6YBmn071rODyHz5bxUmCFDD81oHGjotGCh8nLxeUAzSFgTX0CPaluaFLW/VH1gsDSDLU6ZIicxmxUqaG2hF8Vph0w3qre86pHUrN2gh7RIKelwj6SJz5NmlVEcWPWmftp/sxNv+aiv778y8KWpNB12XtaW/5dIRj1Ua/cxT1WPntmT91468aRJgFD6Cv5Fz8jD5hi3xLirZx4IsvMfZO7XeMzZXfY8kIeIxDp0pbPp5ts97suc/Xg==
  • Delivered-to: cdt-dev@xxxxxxxxxxx
  • List-archive: <https://www.eclipse.org/mailman/private/cdt-dev>
  • List-help: <mailto:cdt-dev-request@eclipse.org?subject=help>
  • List-subscribe: <https://www.eclipse.org/mailman/listinfo/cdt-dev>, <mailto:cdt-dev-request@eclipse.org?subject=subscribe>
  • List-unsubscribe: <https://www.eclipse.org/mailman/options/cdt-dev>, <mailto:cdt-dev-request@eclipse.org?subject=unsubscribe>
  • Thread-index: AQHV8H2NHtXLElb12U+Hd2ShrTFmAg==
  • Thread-topic: Confusion again.

My C++ source code:

void initPluginAgentMsgCopy(PFO_PluginAgent& );

class CPlImplMsgCopy : public QFIXFLEX_NMSP::CPluginImplBase<CPlImplMsgCopy>
{
public:
    CPlImplMsgCopy() : m_pMgr(NULL), m_bDoRecovery(false)
    {
    }
    ~CPlImplMsgCopy()
    {
        if (NULL != m_pMgr)
        {
            delete m_pMgr;
            m_pMgr = NULL;
        }
    }

    static const std::string& name()
    {
        static const std::string s_name("MSGCOPY");
        return s_name;
    }
}


My Java processing code:

private static void processFuncName(IIndex index, IASTName funcName) {
        // find bindings for name
        try {
            index.acquireReadLock();
            IBinding binding = funcName.resolveBinding();
            if (binding != null) {
                display(binding.getName());
                IIndexBinding[] bindings= index.findBindings(binding.getName().toCharArray(), IndexFilter.ALL_DECLARED, new NullProgressMonitor());
                display("bindings=" + bindings.length);
                for (IIndexBinding b : bindings) {
                    if (binding instanceof IFunction) {
                        outputReferences(index, binding);
                    } else {
                         
                        display("non IFunction");
                    }
                }
            }
        } catch (CoreException e) {
            log.error(e.getMessage());
        } catch (InterruptedException e) {
            log.error(e.getMessage());
        } finally {
            index.releaseReadLock();
        }
    }

initPluginAgentMsgCopy() will come to outputReferences() but CPlImplMsgCopy() /name().

display("bindings=" + bindings.length); does show these 3 (initPluginAgentMsgCopy() /CPlImplMsgCopy() /name() binding size are 1.

Thanks.

Back to the top