Back to index

php5  5.3.10
xmlrpc_introspection.h
Go to the documentation of this file.
00001 /*
00002   This file is part of libXMLRPC - a C library for xml-encoded function calls.
00003 
00004   Author: Dan Libby (dan@libby.com)
00005   Epinions.com may be contacted at feedback@epinions-inc.com
00006 */
00007 
00008 /*  
00009   Copyright 2000 Epinions, Inc. 
00010 
00011   Subject to the following 3 conditions, Epinions, Inc.  permits you, free 
00012   of charge, to (a) use, copy, distribute, modify, perform and display this 
00013   software and associated documentation files (the "Software"), and (b) 
00014   permit others to whom the Software is furnished to do so as well.  
00015 
00016   1) The above copyright notice and this permission notice shall be included 
00017   without modification in all copies or substantial portions of the 
00018   Software.  
00019 
00020   2) THE SOFTWARE IS PROVIDED "AS IS", WITHOUT ANY WARRANTY OR CONDITION OF 
00021   ANY KIND, EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION ANY 
00022   IMPLIED WARRANTIES OF ACCURACY, MERCHANTABILITY, FITNESS FOR A PARTICULAR 
00023   PURPOSE OR NONINFRINGEMENT.  
00024 
00025   3) IN NO EVENT SHALL EPINIONS, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, 
00026   SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES OR LOST PROFITS ARISING OUT 
00027   OF OR IN CONNECTION WITH THE SOFTWARE (HOWEVER ARISING, INCLUDING 
00028   NEGLIGENCE), EVEN IF EPINIONS, INC.  IS AWARE OF THE POSSIBILITY OF SUCH 
00029   DAMAGES.    
00030 
00031 */
00032 
00033 /* IMPORTANT!
00034  *
00035  * only public (official API) things should be in this file. Anything else
00036  * should go in <group>_private.h, or in the appropriate .c file.
00037  */
00038 
00039 
00040 #ifndef __XI_INTROSPECTION_H
00041 /*
00042  * Avoid include redundancy.
00043  */
00044 #define __XI_INTROSPECTION_H
00045 
00046 /*----------------------------------------------------------------------------
00047  * xmlrpc_introspection.h
00048  *
00049  * Purpose:
00050  *   define public introspection API
00051  * Comments:
00052  */
00053 
00054 /*----------------------------------------------------------------------------
00055  * Constants
00056  */
00057  #define xi_token_params "params"
00058  #define xi_token_returns "returns"
00059  #define xi_token_related "related"
00060  #define xi_token_sub "sub"
00061  
00062  
00063 /*----------------------------------------------------------------------------
00064  * Includes
00065  */
00066 
00067 /*----------------------------------------------------------------------------
00068  * Structures
00069  */
00070  
00071  /****d* VALUE/XMLRPC_IntrospectionCallback
00072  * NAME
00073  *   XMLRPC_IntrospectionCallback
00074  * NOTES
00075  *   Function prototype for lazy documentation generation (not generated until requested).
00076  * SOURCE
00077  */
00078 typedef void (*XMLRPC_IntrospectionCallback)(XMLRPC_SERVER server, void* userData);
00079 /******/
00080  
00081  
00082 /*----------------------------------------------------------------------------
00083  * Globals
00084  */
00085 
00086 /*----------------------------------------------------------------------------
00087  * Functions
00088  */
00089 XMLRPC_VALUE XMLRPC_IntrospectionCreateDescription(const char* xml, XMLRPC_ERROR error);
00090 int XMLRPC_ServerAddIntrospectionData(XMLRPC_SERVER server, XMLRPC_VALUE desc);
00091 int XMLRPC_ServerRegisterIntrospectionCallback(XMLRPC_SERVER server, XMLRPC_IntrospectionCallback cb);
00092  
00093 /*----------------------------------------------------------------------------
00094  * Macros
00095  */
00096 
00097 
00098 #endif /* __XI_INTROSPECTION_H */
00099 
00100 
00101