#include <Parse_Node.h>
Inheritance diagram for ACE_Static_Function_Node:


Public Member Functions | |
| ACE_Static_Function_Node (const ACE_TCHAR *func_name) | |
| virtual void * | symbol (ACE_Service_Gestalt *config, int &yyerrno, ACE_Service_Object_Exterminator *=0) |
| virtual | ~ACE_Static_Function_Node (void) |
| void | dump (void) const |
| Dump the state of an object. | |
Public Attributes | |
| ACE_ALLOC_HOOK_DECLARE | |
| Declare the dynamic allocation hooks. | |
Private Member Functions | |
| ACE_Static_Function_Node (const ACE_Static_Function_Node &) | |
| ACE_Static_Function_Node & | operator= (const ACE_Static_Function_Node &) |
Private Attributes | |
| const ACE_TCHAR * | function_name_ |
| Name of the function that we're parsing. | |
For internal use only.
Definition at line 455 of file Parse_Node.h.
|
|
Definition at line 692 of file Parse_Node.cpp. References ACE_TCHAR, and ACE_TRACE.
00693 : function_name_ (ACE::strnew (func_name)) 00694 { 00695 ACE_TRACE ("ACE_Static_Function_Node::ACE_Static_Function_Node"); 00696 this->must_delete_ = 1; 00697 } |
|
|
Definition at line 753 of file Parse_Node.cpp. References ACE_TRACE.
00754 {
00755 ACE_TRACE ("ACE_Static_Function_Node::~ACE_Static_Function_Node");
00756 delete[] const_cast<ACE_TCHAR *> (this->function_name_);
00757 }
|
|
|
|
|
|
Dump the state of an object.
Reimplemented from ACE_Location_Node. Definition at line 685 of file Parse_Node.cpp. References ACE_TRACE.
00686 {
00687 #if defined (ACE_HAS_DUMP)
00688 ACE_TRACE ("ACE_Static_Function_Node::dump");
00689 #endif /* ACE_HAS_DUMP */
00690 }
|
|
|
|
|
||||||||||||||||
|
Will update the yyerrno member and/or corresponding configuration repository Implements ACE_Location_Node. Definition at line 700 of file Parse_Node.cpp. References ACE_ERROR_RETURN, ACE_LIB_TEXT, ACE_Service_Object_Exterminator, ACE_TRACE, ACE_Static_Svc_Descriptor::alloc_, ACE_Service_Gestalt::find_static_svc_descriptor(), and LM_ERROR.
00703 {
00704 ACE_TRACE ("ACE_Static_Function_Node::symbol");
00705
00706 this->symbol_ = 0;
00707
00708 // Locate the factory function <function_name> in the statically
00709 // linked svcs.
00710
00711 ACE_Static_Svc_Descriptor *ssd = 0;
00712 if (config->find_static_svc_descriptor (this->function_name_, &ssd) == -1)
00713 {
00714 yyerrno++;
00715 ACE_ERROR_RETURN ((LM_ERROR,
00716 ACE_LIB_TEXT ("(%P|%t) No static service ")
00717 ACE_LIB_TEXT ("registered for function %s\n"),
00718 this->function_name_),
00719 0);
00720 }
00721
00722 if (ssd->alloc_ == 0)
00723 {
00724 yyerrno++;
00725
00726 if (this->symbol_ == 0)
00727 {
00728 ++yyerrno;
00729
00730 ACE_ERROR_RETURN ((LM_ERROR,
00731 ACE_LIB_TEXT ("(%P|%t) No static service factory ")
00732 ACE_LIB_TEXT ("function registered for function %s\n"),
00733 this->function_name_),
00734 0);
00735 }
00736 }
00737
00738 // Invoke the factory function and record it's return value.
00739 this->symbol_ = (*ssd->alloc_) (gobbler);
00740
00741 if (this->symbol_ == 0)
00742 {
00743 ++yyerrno;
00744 ACE_ERROR_RETURN ((LM_ERROR,
00745 ACE_LIB_TEXT ("%p\n"),
00746 this->function_name_),
00747 0);
00748 }
00749
00750 return this->symbol_;
00751 }
|
|
|
Declare the dynamic allocation hooks.
Reimplemented from ACE_Location_Node. Definition at line 468 of file Parse_Node.h. |
|
|
Name of the function that we're parsing.
Definition at line 472 of file Parse_Node.h. |
1.3.6