本文整理汇总了C++中CDXLNode::SerializeToDXL方法的典型用法代码示例。如果您正苦于以下问题:C++ CDXLNode::SerializeToDXL方法的具体用法?C++ CDXLNode::SerializeToDXL怎么用?C++ CDXLNode::SerializeToDXL使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CDXLNode
的用法示例。
在下文中一共展示了CDXLNode::SerializeToDXL方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PstrOpName
//---------------------------------------------------------------------------
// @function:
// CDXLPhysicalLimit::SerializeToDXL
//
// @doc:
// Serialize operator in DXL format
//
//---------------------------------------------------------------------------
void
CDXLPhysicalLimit::SerializeToDXL
(
CXMLSerializer *pxmlser,
const CDXLNode *pdxln
)
const
{
const CWStringConst *pstrElemName = PstrOpName();
pxmlser->OpenElement(CDXLTokens::PstrToken(EdxltokenNamespacePrefix), pstrElemName);
// serialize properties
pdxln->SerializePropertiesToDXL(pxmlser);
// serialize children nodes
const DrgPdxln *pdrgpdxln = pdxln->PdrgpdxlnChildren();
GPOS_ASSERT(4 == pdxln->UlArity());
// serialize the first two children: target-list and plan
for (ULONG i = 0; i < 4; i++)
{
CDXLNode *pdxlnChild = (*pdrgpdxln)[i];
pdxlnChild->SerializeToDXL(pxmlser);
}
pxmlser->CloseElement(CDXLTokens::PstrToken(EdxltokenNamespacePrefix), pstrElemName);
}
示例2: UlArity
//---------------------------------------------------------------------------
// @function:
// CDXLNode::SerializeChildrenToDXL
//
// @doc:
// Serializes the node's children in DXL format
//
//---------------------------------------------------------------------------
void
CDXLNode::SerializeChildrenToDXL
(
CXMLSerializer *pxmlser
)
const
{
// serialize children nodes
const ULONG ulArity = UlArity();
for (ULONG i = 0; i < ulArity; i++)
{
GPOS_CHECK_ABORT;
CDXLNode *pdxlnChild = (*m_pdrgpdxln)[i];
pdxlnChild->SerializeToDXL(pxmlser);
GPOS_CHECK_ABORT;
}
}