CMGDK r49-rc2
K:/CMGDKv18/SDK/Source/SQL/MySQL/include/my_xml.h
浏览该文件的文档。
00001 / *   C o p y r i g h t   ( C )   2 0 0 0   M y S Q L   A B 
00002  
00003        T h i s   p r o g r a m   i s   f r e e   s o f t w a r e ;   y o u   c a n   r e d i s t r i b u t e   i t   a n d / o r   m o d i f y 
00004  
00005        i t   u n d e r   t h e   t e r m s   o f   t h e   G N U   G e n e r a l   P u b l i c   L i c e n s e   a s   p u b l i s h e d   b y 
00006  
00007        t h e   F r e e   S o f t w a r e   F o u n d a t i o n ;   v e r s i o n   2   o f   t h e   L i c e n s e . 
00008  
00009        T h i s   p r o g r a m   i s   d i s t r i b u t e d   i n   t h e   h o p e   t h a t   i t   w i l l   b e   u s e f u l , 
00010  
00011        b u t   W I T H O U T   A N Y   W A R R A N T Y ;   w i t h o u t   e v e n   t h e   i m p l i e d   w a r r a n t y   o f 
00012  
00013        M E R C H A N T A B I L I T Y   o r   F I T N E S S   F O R   A   P A R T I C U L A R   P U R P O S E .     S e e   t h e 
00014  
00015        G N U   G e n e r a l   P u b l i c   L i c e n s e   f o r   m o r e   d e t a i l s . 
00016  
00017        Y o u   s h o u l d   h a v e   r e c e i v e d   a   c o p y   o f   t h e   G N U   G e n e r a l   P u b l i c   L i c e n s e 
00018  
00019        a l o n g   w i t h   t h i s   p r o g r a m ;   i f   n o t ,   w r i t e   t o   t h e   F r e e   S o f t w a r e 
00020  
00021        F o u n d a t i o n ,   I n c . ,   5 9   T e m p l e   P l a c e ,   S u i t e   3 3 0 ,   B o s t o n ,   M A     0 2 1 1 1 - 1 3 0 7     U S A     * / 
00022  
00023  
00024  
00025  # i f n d e f   _ m y _ x m l _ h 
00026  
00027  # d e f i n e   _ m y _ x m l _ h 
00028  
00029  # i f d e f     _ _ c p l u s p l u s 
00030  
00031  e x t e r n   " C "   { 
00032  
00033  # e n d i f 
00034  
00035  
00036  
00037  # d e f i n e   M Y _ X M L _ O K   0 
00038  
00039  # d e f i n e   M Y _ X M L _ E R R O R     1 
00040  
00041  / *   
00042  
00043      A   f l a g   w h e t h e r   t o   u s e   a b s o l u t e   t a g   n a m e s   i n   c a l l - b a c k   f u n c t i o n s , 
00044  
00045      l i k e   " a " ,   " a . b "   a n d   " a . b . c "   ( u s e d   i n   c h a r a c t e r   s e t   f i l e   p a r s e r ) , 
00046  
00047      o r   r e l a t i v e   n a m e s   l i k e   " a " ,   " b "   a n d   " c " . 
00048  
00049  * / 
00050  
00051  # d e f i n e   M Y _ X M L _ F L A G _ R E L A T I V E _ N A M E S   1 
00052  
00053  / * 
00054  
00055      A   f l a g   w h e t h e r   t o   s k i p   n o r m i l i z a t i o n   o f   t e x t   v a l u e s   b e f o r e   c a l l i n g 
00056  
00057      c a l l - b a c k   f u n c t i o n s :   i . e .   s k i p   l e a d i n g / t r a i l i n g   s p a c e s , 
00058  
00059      \ r ,   \ n ,   \ t   c h a r a c t e r s . 
00060  
00061  * / 
00062  
00063  # d e f i n e   M Y _ X M L _ F L A G _ S K I P _ T E X T _ N O R M A L I Z A T I O N   2 
00064  
00065  e n u m   m y _ x m l _ n o d e _ t y p e 
00066  
00067  { 
00068  
00069      M Y _ X M L _ N O D E _ T A G ,       / *   c a n   h a v e   T A G ,   A T T R   a n d   T E X T   c h i l d r e n   * / 
00070  
00071      M Y _ X M L _ N O D E _ A T T R ,     / *   c a n   h a v e   T E X T   c h i l d r e n                               * / 
00072  
00073      M Y _ X M L _ N O D E _ T E X T       / *   c a n n o t   h a v e   c h i l d r e n                                   * / 
00074  
00075  } ; 
00076  
00077  t y p e d e f   s t r u c t   x m l _ s t a c k _ s t 
00078  
00079  { 
00080  
00081      i n t   f l a g s ; 
00082  
00083      e n u m   m y _ x m l _ n o d e _ t y p e   c u r r e n t _ n o d e _ t y p e ; 
00084  
00085      c h a r   e r r s t r [ 1 2 8 ] ; 
00086  
00087      c h a r   a t t r [ 1 2 8 ] ; 
00088  
00089      c h a r   * a t t r e n d ; 
00090  
00091      c o n s t   c h a r   * b e g ; 
00092  
00093      c o n s t   c h a r   * c u r ; 
00094  
00095      c o n s t   c h a r   * e n d ; 
00096  
00097      v o i d   * u s e r _ d a t a ; 
00098  
00099      i n t     ( * e n t e r ) ( s t r u c t   x m l _ s t a c k _ s t   * s t , c o n s t   c h a r   * v a l ,   s i z e _ t   l e n ) ; 
00100  
00101      i n t     ( * v a l u e ) ( s t r u c t   x m l _ s t a c k _ s t   * s t , c o n s t   c h a r   * v a l ,   s i z e _ t   l e n ) ; 
00102  
00103      i n t     ( * l e a v e _ x m l ) ( s t r u c t   x m l _ s t a c k _ s t   * s t , c o n s t   c h a r   * v a l ,   s i z e _ t   l e n ) ; 
00104  
00105  }   M Y _ X M L _ P A R S E R ; 
00106  
00107  v o i d   m y _ x m l _ p a r s e r _ c r e a t e ( M Y _ X M L _ P A R S E R   * s t ) ; 
00108  
00109  v o i d   m y _ x m l _ p a r s e r _ f r e e ( M Y _ X M L _ P A R S E R   * s t ) ; 
00110  
00111  i n t     m y _ x m l _ p a r s e ( M Y _ X M L _ P A R S E R   * s t , c o n s t   c h a r   * s t r ,   s i z e _ t   l e n ) ; 
00112  
00113  v o i d   m y _ x m l _ s e t _ v a l u e _ h a n d l e r ( M Y _ X M L _ P A R S E R   * s t ,   i n t   ( * ) ( M Y _ X M L _ P A R S E R   * , 
00114  
00115                                c o n s t   c h a r   * , 
00116  
00117                                s i z e _ t   l e n ) ) ; 
00118  
00119  v o i d   m y _ x m l _ s e t _ e n t e r _ h a n d l e r ( M Y _ X M L _ P A R S E R   * s t ,   i n t   ( * ) ( M Y _ X M L _ P A R S E R   * , 
00120  
00121                                c o n s t   c h a r   * , 
00122  
00123                                s i z e _ t   l e n ) ) ; 
00124  
00125  v o i d   m y _ x m l _ s e t _ l e a v e _ h a n d l e r ( M Y _ X M L _ P A R S E R   * s t ,   i n t   ( * ) ( M Y _ X M L _ P A R S E R   * , 
00126  
00127                                c o n s t   c h a r   * , 
00128  
00129                                s i z e _ t   l e n ) ) ; 
00130  
00131  v o i d   m y _ x m l _ s e t _ u s e r _ d a t a ( M Y _ X M L _ P A R S E R   * s t ,   v o i d   * ) ; 
00132  
00133  s i z e _ t   m y _ x m l _ e r r o r _ p o s ( M Y _ X M L _ P A R S E R   * s t ) ; 
00134  
00135  u i n t   m y _ x m l _ e r r o r _ l i n e n o ( M Y _ X M L _ P A R S E R   * s t ) ; 
00136  
00137  c o n s t   c h a r   * m y _ x m l _ e r r o r _ s t r i n g ( M Y _ X M L _ P A R S E R   * s t ) ; 
00138  
00139  # i f d e f     _ _ c p l u s p l u s 
00140  
00141  } 
00142  
00143  # e n d i f 
00144  
00145  # e n d i f   / *   _ m y _ x m l _ h   * / 
00146  
00147  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义