当前位置: 首页>>代码示例>>C++>>正文


C++ TRACE_PARSE_ENTRY函数代码示例

本文整理汇总了C++中TRACE_PARSE_ENTRY函数的典型用法代码示例。如果您正苦于以下问题:C++ TRACE_PARSE_ENTRY函数的具体用法?C++ TRACE_PARSE_ENTRY怎么用?C++ TRACE_PARSE_ENTRY使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了TRACE_PARSE_ENTRY函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CElementParser, OnComplexType)
{
    TRACE_PARSE_ENTRY();

    CElement * pCurr = GetElement();
    if (pCurr != NULL)
    {
        CComplexType * pElem = pCurr->AddComplexType();
        if (pElem != NULL)
        {
            SetXSDElementInfo(pElem, pCurr, GetLocator());

            CAutoPtr<CComplexTypeParser> p( new CComplexTypeParser(GetReader(), this, GetLevel(), pElem) );
            if (p != NULL)
            {
                if (g_ParserList.AddHead(p) != NULL)
                {
                    return p.Detach()->GetAttributes(pAttributes);
                }
            }
        }
    }

    EmitErrorHr(E_OUTOFMEMORY);
    return E_FAIL;
}
开发者ID:sun-friderick,项目名称:splayer,代码行数:26,代码来源:ElementParser.cpp

示例2: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CWSDLOperationParser, OnHttpOperation)
{
	TRACE_PARSE_ENTRY();

	CWSDLPortTypeOperation * pCurr = GetOperation();
	if (pCurr != NULL)
	{
		CHttpOperation *pOperation = pCurr->AddHttpOperation();
		if (pOperation != NULL)
		{
			CStringW strLocation;
			if (S_OK == GetAttribute(pAttributes, L"location", sizeof("location")-1, strLocation))
			{
				if (SUCCEEDED(pOperation->SetLocation(strLocation)))
				{
					return SkipElement();
				}
			}
			OnMissingAttribute(TRUE, L"location", sizeof("location")-1, L"", 0);
		}
	}

	EmitErrorHr(E_OUTOFMEMORY);

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:26,代码来源:WSDLOperationParser.cpp

示例3: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CWSDLBindingParser, OnOperation)
{
	TRACE_PARSE_ENTRY();
	
	CWSDLBinding * pCurr = GetBinding();
	if (pCurr != NULL)
	{
		CAutoPtr<CWSDLPortTypeOperation> spElem;
		spElem.Attach( new CWSDLPortTypeOperation );

		if (spElem != NULL)
		{
			SetXMLElementInfo(spElem, pCurr, GetLocator());

			CAutoPtr<CWSDLOperationParser> p( new CWSDLOperationParser(GetReader(), this, GetLevel(), spElem) );
			if (p)
			{
				if (g_ParserList.AddHead(p) != NULL)
				{
					if (SUCCEEDED(p.Detach()->GetAttributes(pAttributes)))
					{
						if (pCurr->AddOperation(spElem) != NULL)
						{
							spElem.Detach();
							return S_OK;
						}
					}
				}
			}
		}
	}

	EmitErrorHr(E_OUTOFMEMORY);
	return E_FAIL;
}
开发者ID:Fluffiest,项目名称:splayer,代码行数:35,代码来源:WSDLBindingParser.cpp

示例4: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CElementParser, OnMaxOccurs)
{
    TRACE_PARSE_ENTRY();

    if (cchValue==sizeof("unbounded")-1 && !wcsncmp(wszValue, L"unbounded", cchValue))
    {
        CElement * pCurr = GetElement();
        if (pCurr != NULL)
        {
            pCurr->SetMaxOccurs(MAXOCCURS_UNBOUNDED);
            return S_OK;
        }
        return E_FAIL;
    }

    int nMaxOccurs = 0;
    nMaxOccurs = _wtoi(wszValue);
    if (nMaxOccurs >= 0)
    {
        //
        // maxOccurs must be >= 0
        //

        CElement * pCurr = GetElement();
        if (pCurr != NULL)
        {
            pCurr->SetMaxOccurs(nMaxOccurs);
            return S_OK;
        }
    }

    EmitInvalidValue("maxOccurs", wszValue);

    return E_FAIL;
}
开发者ID:sun-friderick,项目名称:splayer,代码行数:35,代码来源:ElementParser.cpp

示例5: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CComplexTypeParser, OnAll)
{
	TRACE_PARSE_ENTRY();

	DisableReset();

	return S_OK;
}
开发者ID:Strongc,项目名称:playasa,代码行数:8,代码来源:ComplexTypeParser.cpp

示例6: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CSchemaParser, OnRedefine)
{
	TRACE_PARSE_ENTRY();

	MarkUnsupported(wszQName, cchQName);
	EmitSkip(wszNamespaceUri, wszLocalName);

	return SkipElement();
}
开发者ID:Strongc,项目名称:playasa,代码行数:9,代码来源:SchemaParser.cpp

示例7: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CComplexTypeParser, OnFinal)
{
	TRACE_PARSE_ENTRY();

	CComplexType * pCurr = GetComplexType();
	if (pCurr != NULL && pCurr->GetElementType() == XSD_COMPLEXTYPE)
	{
		MarkUnsupported(wszQName, cchQName);
	}

	return S_OK;
}
开发者ID:Strongc,项目名称:playasa,代码行数:12,代码来源:ComplexTypeParser.cpp

示例8: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CContentParser, OnID)
{
	TRACE_PARSE_ENTRY();

	CContent *pCurr = GetContent();
	if (pCurr != NULL)
	{
		return pCurr->SetID(wszValue, cchValue);
	}

	EmitErrorHr(E_OUTOFMEMORY);
	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:13,代码来源:ContentParser.cpp

示例9: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CWSDLBindingParser, OnType)
{
	TRACE_PARSE_ENTRY();

	CWSDLBinding * pCurr = GetBinding();
	if (pCurr != NULL)
	{
		return pCurr->SetType(wszValue, cchValue);
	}

	EmitError(IDS_SDL_INTERNAL);

	return E_FAIL;
}
开发者ID:Fluffiest,项目名称:splayer,代码行数:14,代码来源:WSDLBindingParser.cpp

示例10: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CWSDLMessageParser, OnName)
{
	TRACE_PARSE_ENTRY();

	CWSDLMessage *pCurr = GetMessage();
	if (pCurr != NULL)
	{
		return pCurr->SetName(wszValue, cchValue);
	}

	EmitError(IDS_SDL_INTERNAL);

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:14,代码来源:WSDLMessageParser.cpp

示例11: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CWSDLOperationParser, OnName)
{
	TRACE_PARSE_ENTRY();

	CWSDLPortTypeOperation * pCurr = GetOperation();
	if (pCurr != NULL)
	{
		return pCurr->SetName(wszValue, cchValue);
	}

	EmitError(IDS_SDL_INTERNAL);

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:14,代码来源:WSDLOperationParser.cpp

示例12: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CSchemaParser, OnTargetNamespace)
{
	TRACE_PARSE_ENTRY();

	CSchema * pCurr = GetSchema();
	if (pCurr != NULL)
	{
		return pCurr->SetTargetNamespace(wszValue, cchValue);
	}

	EmitError(IDS_SDL_INTERNAL);

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:14,代码来源:SchemaParser.cpp

示例13: ATTR_METHOD_IMPL

ATTR_METHOD_IMPL(CWSDLServiceParser, OnName)
{
	TRACE_PARSE_ENTRY();

	CWSDLService * pCurr = GetService();
	if (pCurr != NULL)
	{
		return pCurr->SetName(wszValue, cchValue);
	}

	EmitErrorHr(E_OUTOFMEMORY);

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:14,代码来源:WSDLServiceParser.cpp

示例14: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CContentParser, OnExtension)
{
	TRACE_PARSE_ENTRY();
	
	int nLine = 0;
	int nCol = 0;
	GetLocator()->getLineNumber(&nLine);
	GetLocator()->getColumnNumber(&nCol);
	
	CContent *pCurr = GetContent();
	if (pCurr != NULL)
	{
		EmitFileError(IDS_SDL_BASE_EXTENSION,
			(LPCWSTR) pCurr->GetParentDocument()->GetDocumentUri(),
			nLine, nCol, 0);
	}

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:19,代码来源:ContentParser.cpp

示例15: TAG_METHOD_IMPL

TAG_METHOD_IMPL(CWSDLMessageParser, OnPart)
{
	TRACE_PARSE_ENTRY();

	CWSDLMessage *pCurr = GetMessage();
	if (pCurr != NULL)
	{
		CWSDLMessagePart *pPart = pCurr->AddPart();
		if (pPart != NULL)
		{
			SetXMLElementInfo(pPart, pCurr, GetLocator());

			CStringW strName;
			if (S_OK == GetAttribute(pAttributes, L"name", sizeof("name")-1, strName))
			{
				pPart->SetName(strName);
				
				CStringW strElement;
				if (S_OK == GetAttribute(pAttributes, L"element", sizeof("element")-1, strElement))
				{
					pPart->SetElement(strElement);
				}
				CStringW strType;
				if (S_OK == GetAttribute(pAttributes, L"type", sizeof("type")-1, strType))
				{
					pPart->SetType(strType);
				}
//				else
//				{
//					OnMissingAttribute(TRUE, L"element", sizeof("element")-1, L"", 0);
//				}

				return SkipElement();
			}
			OnMissingAttribute(TRUE, L"name", sizeof("name")-1, L"", 0);
		}
	}

	EmitErrorHr(E_OUTOFMEMORY);

	return E_FAIL;
}
开发者ID:Strongc,项目名称:playasa,代码行数:42,代码来源:WSDLMessageParser.cpp


注:本文中的TRACE_PARSE_ENTRY函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。