📄 entity_manager.i
字号:
// Entity_Manager.i,v 1.5 2004/01/09 00:50:35 kitty Exp
ACEXML_INLINE int
ACEXML_Entity_Manager::add_entity (const ACEXML_Char *ref,
const ACEXML_Char *v)
{
if (!this->entities_ )
ACE_NEW_RETURN (this->entities_, ACEXML_ENTITIES_MANAGER, -1);
ACEXML_String name (ref, 0, 0);
ACEXML_String value (v, 0, 0);
return this->entities_->bind (name, value);
}
ACEXML_INLINE const ACEXML_Char*
ACEXML_Entity_Manager::resolve_entity (const ACEXML_Char *ref)
{
if (!this->entities_)
return 0;
ACEXML_ENTITY_ENTRY *entry;
if (this->entities_->find (ACEXML_String (ref, 0, 0),
entry) == 0)
return entry->int_id_.c_str();
return 0;
}
ACEXML_INLINE int
ACEXML_Entity_Manager::resolve_entity (const ACEXML_Char* ref,
ACEXML_Char*& systemId,
ACEXML_Char*& publicId)
{
if (!this->entities_)
return 0;
publicId = systemId = 0;
ACEXML_ENTITY_ENTRY_ITERATOR iter (*this->entities_, ref);
ACEXML_ENTITY_ENTRY_ITERATOR end (*this->entities_, ref, 1);
if (iter != end)
{
systemId = ACE_const_cast (ACEXML_Char*, (*iter).int_id_.c_str());
++iter;
if (iter != end)
publicId = ACE_const_cast (ACEXML_Char*, (*iter).int_id_.c_str());
return 0;
}
return -1;
}
ACEXML_INLINE int
ACEXML_Entity_Manager::reset (void)
{
delete this->entities_;
this->entities_ = 0;
return 0;
}
ACEXML_INLINE size_t
ACEXML_Entity_Manager::size (void) const
{
if (!this->entities_)
return 0;
return this->entities_->current_size();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -