From 35969f40f26e580bb4750c8ba524f8dc56bda84d Mon Sep 17 00:00:00 2001 From: Michael Wallner Date: Wed, 4 Dec 2013 13:15:16 +0100 Subject: [PATCH 1/1] publish docs as gh-pages --- annotated.html | 131 ++ annotated.js | 9 + bc_s.png | Bin 0 -> 676 bytes bdwn.png | Bin 0 -> 147 bytes classes.html | 130 ++ closed.png | Bin 0 -> 132 bytes config_8h.html | 357 ++++ config_8h_source.html | 155 ++ doxygen.css | 1357 ++++++++++++ doxygen.png | Bin 0 -> 3779 bytes dynsections.js | 97 + files.html | 125 ++ files.js | 4 + ftv2blank.png | Bin 0 -> 86 bytes ftv2cl.png | Bin 0 -> 453 bytes ftv2doc.png | Bin 0 -> 746 bytes ftv2folderclosed.png | Bin 0 -> 616 bytes ftv2folderopen.png | Bin 0 -> 597 bytes ftv2lastnode.png | Bin 0 -> 86 bytes ftv2link.png | Bin 0 -> 746 bytes ftv2mlastnode.png | Bin 0 -> 246 bytes ftv2mnode.png | Bin 0 -> 246 bytes ftv2mo.png | Bin 0 -> 403 bytes ftv2node.png | Bin 0 -> 86 bytes ftv2ns.png | Bin 0 -> 388 bytes ftv2plastnode.png | Bin 0 -> 229 bytes ftv2pnode.png | Bin 0 -> 229 bytes ftv2splitbar.png | Bin 0 -> 314 bytes ftv2vertline.png | Bin 0 -> 86 bytes functions.html | 171 ++ functions_vars.html | 171 ++ globals.html | 203 ++ globals_defs.html | 109 + globals_func.html | 173 ++ globals_type.html | 155 ++ globals_vars.html | 109 + graph_legend.html | 178 ++ graph_legend.md5 | 1 + graph_legend.png | Bin 0 -> 19778 bytes index.html | 114 + jquery.js | 72 + nav_f.png | Bin 0 -> 153 bytes nav_g.png | Bin 0 -> 95 bytes nav_h.png | Bin 0 -> 98 bytes navtree.css | 143 ++ navtree.js | 544 +++++ navtreeindex0.js | 65 + open.png | Bin 0 -> 123 bytes php__raphf_8c.html | 956 +++++++++ php__raphf_8h.html | 1207 +++++++++++ php__raphf_8h.js | 54 + php__raphf_8h_source.html | 316 +++ raphf.png | Bin 0 -> 28796 bytes resize.js | 93 + run-tests_8php.html | 1872 +++++++++++++++++ search/all_24.html | 26 + search/all_24.js | 42 + search/all_63.html | 26 + search/all_63.js | 5 + search/all_64.html | 26 + search/all_64.js | 5 + search/all_65.html | 26 + search/all_65.js | 6 + search/all_66.html | 26 + search/all_66.js | 6 + search/all_67.html | 26 + search/all_67.js | 6 + search/all_68.html | 26 + search/all_68.js | 4 + search/all_69.html | 26 + search/all_69.js | 4 + search/all_6a.html | 26 + search/all_6a.js | 15 + search/all_6c.html | 26 + search/all_6c.js | 4 + search/all_6d.html | 26 + search/all_6d.js | 4 + search/all_70.html | 26 + search/all_70.js | 37 + search/all_71.html | 26 + search/all_71.js | 5 + search/all_72.html | 26 + search/all_72.js | 6 + search/all_73.html | 26 + search/all_73.js | 4 + search/all_74.html | 26 + search/all_74.js | 5 + search/all_75.html | 26 + search/all_75.js | 4 + search/all_76.html | 26 + search/all_76.js | 4 + search/all_77.html | 26 + search/all_77.js | 4 + search/all_7a.html | 26 + search/all_7a.js | 4 + search/classes_70.html | 26 + search/classes_70.js | 9 + search/close.png | Bin 0 -> 273 bytes search/defines_63.html | 26 + search/defines_63.js | 4 + search/defines_68.html | 26 + search/defines_68.js | 13 + search/defines_70.html | 26 + search/defines_70.js | 5 + search/defines_73.html | 26 + search/defines_73.js | 4 + search/files_63.html | 26 + search/files_63.js | 4 + search/files_70.html | 26 + search/files_70.js | 4 + search/files_72.html | 26 + search/files_72.js | 4 + search/functions_63.html | 26 + search/functions_63.js | 6 + search/functions_65.html | 26 + search/functions_65.js | 5 + search/functions_66.html | 26 + search/functions_66.js | 4 + search/functions_67.html | 26 + search/functions_67.js | 6 + search/functions_6a.html | 26 + search/functions_6a.js | 15 + search/functions_6d.html | 26 + search/functions_6d.js | 4 + search/functions_70.html | 26 + search/functions_70.js | 19 + search/functions_72.html | 26 + search/functions_72.js | 5 + search/functions_73.html | 26 + search/functions_73.js | 4 + search/functions_74.html | 26 + search/functions_74.js | 5 + search/functions_76.html | 26 + search/functions_76.js | 4 + search/functions_77.html | 26 + search/functions_77.js | 4 + search/functions_7a.html | 26 + search/functions_7a.js | 4 + search/mag_sel.png | Bin 0 -> 563 bytes search/nomatches.html | 12 + search/search.css | 271 +++ search/search.js | 805 +++++++ search/search_l.png | Bin 0 -> 604 bytes search/search_m.png | Bin 0 -> 158 bytes search/search_r.png | Bin 0 -> 612 bytes search/typedefs_70.html | 26 + search/typedefs_70.js | 13 + search/typedefs_73.html | 26 + search/typedefs_73.js | 4 + search/variables_24.html | 26 + search/variables_24.js | 42 + search/variables_63.html | 26 + search/variables_63.js | 5 + search/variables_64.html | 26 + search/variables_64.js | 5 + search/variables_65.html | 26 + search/variables_65.js | 4 + search/variables_66.html | 26 + search/variables_66.js | 6 + search/variables_68.html | 26 + search/variables_68.js | 4 + search/variables_69.html | 26 + search/variables_69.js | 4 + search/variables_6c.html | 26 + search/variables_6c.js | 4 + search/variables_70.html | 26 + search/variables_70.js | 4 + search/variables_71.html | 26 + search/variables_71.js | 5 + search/variables_72.html | 26 + search/variables_72.js | 6 + search/variables_73.html | 26 + search/variables_73.js | 4 + search/variables_75.html | 26 + search/variables_75.js | 4 + search/variables_77.html | 26 + search/variables_77.js | 4 + structphp__persistent__handle__factory.html | 267 +++ structphp__persistent__handle__factory.js | 10 + ...rsistent__handle__factory__coll__graph.map | 6 + ...rsistent__handle__factory__coll__graph.md5 | 1 + ...rsistent__handle__factory__coll__graph.png | Bin 0 -> 16223 bytes structphp__persistent__handle__globals.html | 142 ++ structphp__persistent__handle__list.html | 173 ++ structphp__persistent__handle__list.js | 5 + structphp__persistent__handle__provider.html | 183 ++ structphp__persistent__handle__provider.js | 5 + ...sistent__handle__provider__coll__graph.map | 5 + ...sistent__handle__provider__coll__graph.md5 | 1 + ...sistent__handle__provider__coll__graph.png | Bin 0 -> 10596 bytes structphp__resource__factory.html | 214 ++ structphp__resource__factory.js | 7 + structphp__resource__factory__coll__graph.map | 3 + structphp__resource__factory__coll__graph.md5 | 1 + structphp__resource__factory__coll__graph.png | Bin 0 -> 4133 bytes structphp__resource__factory__ops.html | 191 ++ structphp__resource__factory__ops.js | 6 + sync_off.png | Bin 0 -> 853 bytes sync_on.png | Bin 0 -> 845 bytes tab_a.png | Bin 0 -> 142 bytes tab_b.png | Bin 0 -> 169 bytes tab_h.png | Bin 0 -> 177 bytes tab_s.png | Bin 0 -> 184 bytes tabs.css | 60 + 204 files changed, 13345 insertions(+) create mode 100644 annotated.html create mode 100644 annotated.js create mode 100644 bc_s.png create mode 100644 bdwn.png create mode 100644 classes.html create mode 100644 closed.png create mode 100644 config_8h.html create mode 100644 config_8h_source.html create mode 100644 doxygen.css create mode 100644 doxygen.png create mode 100644 dynsections.js create mode 100644 files.html create mode 100644 files.js create mode 100644 ftv2blank.png create mode 100644 ftv2cl.png create mode 100644 ftv2doc.png create mode 100644 ftv2folderclosed.png create mode 100644 ftv2folderopen.png create mode 100644 ftv2lastnode.png create mode 100644 ftv2link.png create mode 100644 ftv2mlastnode.png create mode 100644 ftv2mnode.png create mode 100644 ftv2mo.png create mode 100644 ftv2node.png create mode 100644 ftv2ns.png create mode 100644 ftv2plastnode.png create mode 100644 ftv2pnode.png create mode 100644 ftv2splitbar.png create mode 100644 ftv2vertline.png create mode 100644 functions.html create mode 100644 functions_vars.html create mode 100644 globals.html create mode 100644 globals_defs.html create mode 100644 globals_func.html create mode 100644 globals_type.html create mode 100644 globals_vars.html create mode 100644 graph_legend.html create mode 100644 graph_legend.md5 create mode 100644 graph_legend.png create mode 100644 index.html create mode 100644 jquery.js create mode 100644 nav_f.png create mode 100644 nav_g.png create mode 100644 nav_h.png create mode 100644 navtree.css create mode 100644 navtree.js create mode 100644 navtreeindex0.js create mode 100644 open.png create mode 100644 php__raphf_8c.html create mode 100644 php__raphf_8h.html create mode 100644 php__raphf_8h.js create mode 100644 php__raphf_8h_source.html create mode 100644 raphf.png create mode 100644 resize.js create mode 100644 run-tests_8php.html create mode 100644 search/all_24.html create mode 100644 search/all_24.js create mode 100644 search/all_63.html create mode 100644 search/all_63.js create mode 100644 search/all_64.html create mode 100644 search/all_64.js create mode 100644 search/all_65.html create mode 100644 search/all_65.js create mode 100644 search/all_66.html create mode 100644 search/all_66.js create mode 100644 search/all_67.html create mode 100644 search/all_67.js create mode 100644 search/all_68.html create mode 100644 search/all_68.js create mode 100644 search/all_69.html create mode 100644 search/all_69.js create mode 100644 search/all_6a.html create mode 100644 search/all_6a.js create mode 100644 search/all_6c.html create mode 100644 search/all_6c.js create mode 100644 search/all_6d.html create mode 100644 search/all_6d.js create mode 100644 search/all_70.html create mode 100644 search/all_70.js create mode 100644 search/all_71.html create mode 100644 search/all_71.js create mode 100644 search/all_72.html create mode 100644 search/all_72.js create mode 100644 search/all_73.html create mode 100644 search/all_73.js create mode 100644 search/all_74.html create mode 100644 search/all_74.js create mode 100644 search/all_75.html create mode 100644 search/all_75.js create mode 100644 search/all_76.html create mode 100644 search/all_76.js create mode 100644 search/all_77.html create mode 100644 search/all_77.js create mode 100644 search/all_7a.html create mode 100644 search/all_7a.js create mode 100644 search/classes_70.html create mode 100644 search/classes_70.js create mode 100644 search/close.png create mode 100644 search/defines_63.html create mode 100644 search/defines_63.js create mode 100644 search/defines_68.html create mode 100644 search/defines_68.js create mode 100644 search/defines_70.html create mode 100644 search/defines_70.js create mode 100644 search/defines_73.html create mode 100644 search/defines_73.js create mode 100644 search/files_63.html create mode 100644 search/files_63.js create mode 100644 search/files_70.html create mode 100644 search/files_70.js create mode 100644 search/files_72.html create mode 100644 search/files_72.js create mode 100644 search/functions_63.html create mode 100644 search/functions_63.js create mode 100644 search/functions_65.html create mode 100644 search/functions_65.js create mode 100644 search/functions_66.html create mode 100644 search/functions_66.js create mode 100644 search/functions_67.html create mode 100644 search/functions_67.js create mode 100644 search/functions_6a.html create mode 100644 search/functions_6a.js create mode 100644 search/functions_6d.html create mode 100644 search/functions_6d.js create mode 100644 search/functions_70.html create mode 100644 search/functions_70.js create mode 100644 search/functions_72.html create mode 100644 search/functions_72.js create mode 100644 search/functions_73.html create mode 100644 search/functions_73.js create mode 100644 search/functions_74.html create mode 100644 search/functions_74.js create mode 100644 search/functions_76.html create mode 100644 search/functions_76.js create mode 100644 search/functions_77.html create mode 100644 search/functions_77.js create mode 100644 search/functions_7a.html create mode 100644 search/functions_7a.js create mode 100644 search/mag_sel.png create mode 100644 search/nomatches.html create mode 100644 search/search.css create mode 100644 search/search.js create mode 100644 search/search_l.png create mode 100644 search/search_m.png create mode 100644 search/search_r.png create mode 100644 search/typedefs_70.html create mode 100644 search/typedefs_70.js create mode 100644 search/typedefs_73.html create mode 100644 search/typedefs_73.js create mode 100644 search/variables_24.html create mode 100644 search/variables_24.js create mode 100644 search/variables_63.html create mode 100644 search/variables_63.js create mode 100644 search/variables_64.html create mode 100644 search/variables_64.js create mode 100644 search/variables_65.html create mode 100644 search/variables_65.js create mode 100644 search/variables_66.html create mode 100644 search/variables_66.js create mode 100644 search/variables_68.html create mode 100644 search/variables_68.js create mode 100644 search/variables_69.html create mode 100644 search/variables_69.js create mode 100644 search/variables_6c.html create mode 100644 search/variables_6c.js create mode 100644 search/variables_70.html create mode 100644 search/variables_70.js create mode 100644 search/variables_71.html create mode 100644 search/variables_71.js create mode 100644 search/variables_72.html create mode 100644 search/variables_72.js create mode 100644 search/variables_73.html create mode 100644 search/variables_73.js create mode 100644 search/variables_75.html create mode 100644 search/variables_75.js create mode 100644 search/variables_77.html create mode 100644 search/variables_77.js create mode 100644 structphp__persistent__handle__factory.html create mode 100644 structphp__persistent__handle__factory.js create mode 100644 structphp__persistent__handle__factory__coll__graph.map create mode 100644 structphp__persistent__handle__factory__coll__graph.md5 create mode 100644 structphp__persistent__handle__factory__coll__graph.png create mode 100644 structphp__persistent__handle__globals.html create mode 100644 structphp__persistent__handle__list.html create mode 100644 structphp__persistent__handle__list.js create mode 100644 structphp__persistent__handle__provider.html create mode 100644 structphp__persistent__handle__provider.js create mode 100644 structphp__persistent__handle__provider__coll__graph.map create mode 100644 structphp__persistent__handle__provider__coll__graph.md5 create mode 100644 structphp__persistent__handle__provider__coll__graph.png create mode 100644 structphp__resource__factory.html create mode 100644 structphp__resource__factory.js create mode 100644 structphp__resource__factory__coll__graph.map create mode 100644 structphp__resource__factory__coll__graph.md5 create mode 100644 structphp__resource__factory__coll__graph.png create mode 100644 structphp__resource__factory__ops.html create mode 100644 structphp__resource__factory__ops.js create mode 100644 sync_off.png create mode 100644 sync_on.png create mode 100644 tab_a.png create mode 100644 tab_b.png create mode 100644 tab_h.png create mode 100644 tab_s.png create mode 100644 tabs.css diff --git a/annotated.html b/annotated.html new file mode 100644 index 0000000..1e77357 --- /dev/null +++ b/annotated.html @@ -0,0 +1,131 @@ + + + + + + +Resource and persistent handle factory API: Data Structures + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Data Structures
+
+
+
Here are the data structures with brief descriptions:
+ + + + + + + +
oCphp_persistent_handle_factoryDefinition of a persistent handle factory
oCphp_persistent_handle_factory.identThe ident for which this factory manages resources
oCphp_persistent_handle_listPersistent handles storage
oCphp_persistent_handle_providerDefinition of a persistent handle provider
oCphp_resource_factoryThe resource factory
\Cphp_resource_factory_opsThe resource ops consisting of a ctor, a copy ctor and a dtor
+
+
+
+ + + + diff --git a/annotated.js b/annotated.js new file mode 100644 index 0000000..b21138f --- /dev/null +++ b/annotated.js @@ -0,0 +1,9 @@ +var annotated = +[ + [ "php_persistent_handle_factory", "php__raphf_8h.html#structphp__persistent__handle__factory", "php__raphf_8h" ], + [ "php_persistent_handle_factory.ident", "php__raphf_8h.html#structphp__persistent__handle__factory_8ident", "php__raphf_8h" ], + [ "php_persistent_handle_list", "php__raphf_8h.html#structphp__persistent__handle__list", "php__raphf_8h" ], + [ "php_persistent_handle_provider", "php__raphf_8h.html#structphp__persistent__handle__provider", "php__raphf_8h" ], + [ "php_resource_factory", "structphp__resource__factory.html", "structphp__resource__factory" ], + [ "php_resource_factory_ops", "php__raphf_8h.html#structphp__resource__factory__ops", "php__raphf_8h" ] +]; \ No newline at end of file diff --git a/bc_s.png b/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2 GIT binary patch literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT literal 0 HcmV?d00001 diff --git a/bdwn.png b/bdwn.png new file mode 100644 index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T + + + + + +Resource and persistent handle factory API: Data Structure Index + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ + + + + + diff --git a/closed.png b/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT literal 0 HcmV?d00001 diff --git a/config_8h.html b/config_8h.html new file mode 100644 index 0000000..a902b2a --- /dev/null +++ b/config_8h.html @@ -0,0 +1,357 @@ + + + + + + +raphf: config.h File Reference + + + + + + + + + +
+
+ + + + + + + +
+
raphf +
+
Resource and persistent handle factory API
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
config.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define COMPILE_DL_RAPHF   1
 
#define HAVE_DLFCN_H   1
 
#define HAVE_INTTYPES_H   1
 
#define HAVE_MEMORY_H   1
 
#define HAVE_STDINT_H   1
 
#define HAVE_STDLIB_H   1
 
#define HAVE_STRINGS_H   1
 
#define HAVE_STRING_H   1
 
#define HAVE_SYS_STAT_H   1
 
#define HAVE_SYS_TYPES_H   1
 
#define HAVE_UNISTD_H   1
 
#define PACKAGE_BUGREPORT   ""
 
#define PACKAGE_NAME   ""
 
#define PACKAGE_STRING   ""
 
#define PACKAGE_TARNAME   ""
 
#define PACKAGE_URL   ""
 
#define PACKAGE_VERSION   ""
 
#define STDC_HEADERS   1
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define COMPILE_DL_RAPHF   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_DLFCN_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_INTTYPES_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_MEMORY_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_STDINT_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_STDLIB_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_STRING_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_STRINGS_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_SYS_STAT_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_SYS_TYPES_H   1
+
+ +
+
+ +
+
+ + + + +
#define HAVE_UNISTD_H   1
+
+ +
+
+ +
+
+ + + + +
#define PACKAGE_BUGREPORT   ""
+
+ +
+
+ +
+
+ + + + +
#define PACKAGE_NAME   ""
+
+ +
+
+ +
+
+ + + + +
#define PACKAGE_STRING   ""
+
+ +
+
+ +
+
+ + + + +
#define PACKAGE_TARNAME   ""
+
+ +
+
+ +
+
+ + + + +
#define PACKAGE_URL   ""
+
+ +
+
+ +
+
+ + + + +
#define PACKAGE_VERSION   ""
+
+ +
+
+ +
+
+ + + + +
#define STDC_HEADERS   1
+
+ +
+
+
+ + + + diff --git a/config_8h_source.html b/config_8h_source.html new file mode 100644 index 0000000..0b36d8e --- /dev/null +++ b/config_8h_source.html @@ -0,0 +1,155 @@ + + + + + + +raphf: config.h Source File + + + + + + + + + +
+
+ + + + + + + +
+
raphf +
+
Resource and persistent handle factory API
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
config.h
+
+
+Go to the documentation of this file.
1 /* config.h. Generated from config.h.in by configure. */
+
2 /* config.h.in. Generated from configure.in by autoheader. */
+
3 
+
4 /* Whether to build raphf as dynamic module */
+
5 #define COMPILE_DL_RAPHF 1
+
6 
+
7 /* Define to 1 if you have the <dlfcn.h> header file. */
+
8 #define HAVE_DLFCN_H 1
+
9 
+
10 /* Define to 1 if you have the <inttypes.h> header file. */
+
11 #define HAVE_INTTYPES_H 1
+
12 
+
13 /* Define to 1 if you have the <memory.h> header file. */
+
14 #define HAVE_MEMORY_H 1
+
15 
+
16 /* Define to 1 if you have the <stdint.h> header file. */
+
17 #define HAVE_STDINT_H 1
+
18 
+
19 /* Define to 1 if you have the <stdlib.h> header file. */
+
20 #define HAVE_STDLIB_H 1
+
21 
+
22 /* Define to 1 if you have the <strings.h> header file. */
+
23 #define HAVE_STRINGS_H 1
+
24 
+
25 /* Define to 1 if you have the <string.h> header file. */
+
26 #define HAVE_STRING_H 1
+
27 
+
28 /* Define to 1 if you have the <sys/stat.h> header file. */
+
29 #define HAVE_SYS_STAT_H 1
+
30 
+
31 /* Define to 1 if you have the <sys/types.h> header file. */
+
32 #define HAVE_SYS_TYPES_H 1
+
33 
+
34 /* Define to 1 if you have the <unistd.h> header file. */
+
35 #define HAVE_UNISTD_H 1
+
36 
+
37 /* Define to 1 if your C compiler doesn't accept -c and -o together. */
+
38 /* #undef NO_MINUS_C_MINUS_O */
+
39 
+
40 /* Define to the address where bug reports for this package should be sent. */
+
41 #define PACKAGE_BUGREPORT ""
+
42 
+
43 /* Define to the full name of this package. */
+
44 #define PACKAGE_NAME ""
+
45 
+
46 /* Define to the full name and version of this package. */
+
47 #define PACKAGE_STRING ""
+
48 
+
49 /* Define to the one symbol short name of this package. */
+
50 #define PACKAGE_TARNAME ""
+
51 
+
52 /* Define to the home page for this package. */
+
53 #define PACKAGE_URL ""
+
54 
+
55 /* Define to the version of this package. */
+
56 #define PACKAGE_VERSION ""
+
57 
+
58 /* Define to 1 if you have the ANSI C header files. */
+
59 #define STDC_HEADERS 1
+
+ + + + diff --git a/doxygen.css b/doxygen.css new file mode 100644 index 0000000..4699e69 --- /dev/null +++ b/doxygen.css @@ -0,0 +1,1357 @@ +/* The standard CSS for doxygen 1.8.5 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 0px; + margin: 0px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/doxygen.png b/doxygen.png new file mode 100644 index 0000000000000000000000000000000000000000..3ff17d807fd8aa003bed8bb2a69e8f0909592fd1 GIT binary patch literal 3779 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 literal 0 HcmV?d00001 diff --git a/dynsections.js b/dynsections.js new file mode 100644 index 0000000..ed092c7 --- /dev/null +++ b/dynsections.js @@ -0,0 +1,97 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + +Resource and persistent handle factory API: File List + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all files with brief descriptions:
+ + +
\*php_raphf.h
+
+
+
+ + + + diff --git a/files.js b/files.js new file mode 100644 index 0000000..b830e65 --- /dev/null +++ b/files.js @@ -0,0 +1,4 @@ +var files = +[ + [ "php_raphf.h", "php__raphf_8h.html", "php__raphf_8h" ] +]; \ No newline at end of file diff --git a/ftv2blank.png b/ftv2blank.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/ftv2cl.png b/ftv2cl.png new file mode 100644 index 0000000000000000000000000000000000000000..132f6577bf7f085344904602815a260d29f55d9b GIT binary patch literal 453 zcmV;$0XqJPP)VBF;ev;toEj8_OB0EQg5eYilIj#JZG_m^33l3^k4mtzx!TVD?g)Y$ zrvwRDSqT!wLIM$dWCIa$vtxE|mzbTzu-y&$FvF6WA2a{Wr1g}`WdPT-0JzEZ0IxAv z-Z+ejZc&H;I5-pb_SUB}04j0^V)3t{`z<7asDl2Tw3w3sP%)0^8$bhEg)IOTBcRXv zFfq~3&gvJ$F-U7mpBW8z1GY~HK&7h4^YI~Orv~wLnC0PP_dAkv;nzX{9Q|8Gv=2ca z@v)c9T;D#h`TZ2X&&$ff2wedmot995de~-s3I)yauahg;7qn*?1n?F$e+PwP37}~; z1NKUk7reVK^7A;$QRW7qAx40HHUZ<|k3U%nz(Ec`#i+q9K!dgcROAlCS?`L= v>#=f?wF5ZND!1uAfQsk;KN^4&*8~0npJiJ%2dj9(00000NkvXXu0mjfWVFf_ literal 0 HcmV?d00001 diff --git a/ftv2doc.png b/ftv2doc.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/ftv2folderclosed.png b/ftv2folderclosed.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66 GIT binary patch literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA literal 0 HcmV?d00001 diff --git a/ftv2lastnode.png b/ftv2lastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/ftv2link.png b/ftv2link.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/ftv2mlastnode.png b/ftv2mlastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22 GIT binary patch literal 246 zcmVkw!R34#Lv2LOS^S2tZA31X++9RY}n zChwn@Z)Wz*WWHH{)HDtJnq&A2hk$b-y(>?@z0iHr41EKCGp#T5?07*qoM6N<$f(V3Pvj6}9 literal 0 HcmV?d00001 diff --git a/ftv2mnode.png b/ftv2mnode.png new file mode 100644 index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22 GIT binary patch literal 246 zcmVkw!R34#Lv2LOS^S2tZA31X++9RY}n zChwn@Z)Wz*WWHH{)HDtJnq&A2hk$b-y(>?@z0iHr41EKCGp#T5?07*qoM6N<$f(V3Pvj6}9 literal 0 HcmV?d00001 diff --git a/ftv2mo.png b/ftv2mo.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfb80f76e65815989a9350ad79d8ce45380e2b1 GIT binary patch literal 403 zcmV;E0c`$>P)${!fXv7NWJ%@%u4(KapRY>T6_x;E zxE7kt!}Tiw8@d9Sd`rTGum>z#Q14vIm`wm1#-byD1muMi02@YNO5LRF0o!Y{`a!Ya z{^&p0Su|s705&2QxmqdexG+-zNKL3f@8gTQSJrKByfo+oNJ^-{|Mn||Q5SDwjQVsS zr1}7o5-QMs>gYIMD>GRw@$lT`z4r-_m{5U#cR{urD_)TOeY)(UD|qZ^&y`IVijqk~ xs(9-kWFr7E^!lgi8GsFK5kOY_{Xbgf0^etEU%fLevs?fG002ovPDHLkV1nB&vX1}& literal 0 HcmV?d00001 diff --git a/ftv2node.png b/ftv2node.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/ftv2ns.png b/ftv2ns.png new file mode 100644 index 0000000000000000000000000000000000000000..72e3d71c2892d6f00e259facebc88b45f6db2e35 GIT binary patch literal 388 zcmV-~0ek+5P)f+++#cT|!CkD&4pnIkeMEUEM*>`*9>+Juji$!h-mW%M^8s9957{3nvbrz^&=u<~TAUrFROkmt%^F~Ez+-c53Lv%iH3d38!Rv?K zrb&MYAhp;Gf<}wS;9ZZq2@;!uYG;=Z>~GKE^{HD4keu}lnyqhc>kWX^tQn|warJ~h zT+rtMkdz6aHoN%z(o|&wpu@@OpJnF_z{PA)6(FHw02iHslz^(N{4*+K9)QJHR87wT iTyp>aXaF{u2lxRou|^4tux6eB0000^P)R?RzRoKvklcaQ%HF6%rK2&ZgO(-ihJ_C zzrKgp4jgO( fd_(yg|3PpEQb#9`a?Pz_00000NkvXXu0mjftR`5K literal 0 HcmV?d00001 diff --git a/ftv2pnode.png b/ftv2pnode.png new file mode 100644 index 0000000000000000000000000000000000000000..c6ee22f937a07d1dbfc27c669d11f8ed13e2f152 GIT binary patch literal 229 zcmV^P)R?RzRoKvklcaQ%HF6%rK2&ZgO(-ihJ_C zzrKgp4jgO( fd_(yg|3PpEQb#9`a?Pz_00000NkvXXu0mjftR`5K literal 0 HcmV?d00001 diff --git a/ftv2splitbar.png b/ftv2splitbar.png new file mode 100644 index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T literal 0 HcmV?d00001 diff --git a/ftv2vertline.png b/ftv2vertline.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/functions.html b/functions.html new file mode 100644 index 0000000..7a2a421 --- /dev/null +++ b/functions.html @@ -0,0 +1,171 @@ + + + + + + +Resource and persistent handle factory API: Data Fields + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all struct and union fields with links to the structures/unions they belong to:
+
+
+ + + + diff --git a/functions_vars.html b/functions_vars.html new file mode 100644 index 0000000..14ad675 --- /dev/null +++ b/functions_vars.html @@ -0,0 +1,171 @@ + + + + + + +Resource and persistent handle factory API: Data Fields - Variables + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+
+ +
+
+
+ + + + + + diff --git a/globals.html b/globals.html new file mode 100644 index 0000000..aaa6779 --- /dev/null +++ b/globals.html @@ -0,0 +1,203 @@ + + + + + + +Resource and persistent handle factory API: Globals + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:
+
+
+ + + + diff --git a/globals_defs.html b/globals_defs.html new file mode 100644 index 0000000..57c8532 --- /dev/null +++ b/globals_defs.html @@ -0,0 +1,109 @@ + + + + + + +Resource and persistent handle factory API: Globals + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+ + + + diff --git a/globals_func.html b/globals_func.html new file mode 100644 index 0000000..9f59345 --- /dev/null +++ b/globals_func.html @@ -0,0 +1,173 @@ + + + + + + +Resource and persistent handle factory API: Globals + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
+ + + + diff --git a/globals_type.html b/globals_type.html new file mode 100644 index 0000000..70ea2f3 --- /dev/null +++ b/globals_type.html @@ -0,0 +1,155 @@ + + + + + + +Resource and persistent handle factory API: Globals + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
+ + + + diff --git a/globals_vars.html b/globals_vars.html new file mode 100644 index 0000000..eaff2cd --- /dev/null +++ b/globals_vars.html @@ -0,0 +1,109 @@ + + + + + + +Resource and persistent handle factory API: Globals + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+ + + + diff --git a/graph_legend.html b/graph_legend.html new file mode 100644 index 0000000..fb5466d --- /dev/null +++ b/graph_legend.html @@ -0,0 +1,178 @@ + + + + + + +Resource and persistent handle factory API: Graph Legend + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Graph Legend
+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

+
/*! Invisible class because of truncation */
+
class Invisible { };
+
+
/*! Truncated class, inheritance relation is hidden */
+
class Truncated : public Invisible { };
+
+
/* Class not documented with doxygen comments */
+
class Undocumented { };
+
+
/*! Class that is inherited using public inheritance */
+
class PublicBase : public Truncated { };
+
+
/*! A template class */
+
template<class T> class Templ { };
+
+
/*! Class that is inherited using protected inheritance */
+
class ProtectedBase { };
+
+
/*! Class that is inherited using private inheritance */
+
class PrivateBase { };
+
+
/*! Class that is used by the Inherited class */
+
class Used { };
+
+
/*! Super class that inherits a number of other classes */
+
class Inherited : public PublicBase,
+
protected ProtectedBase,
+
private PrivateBase,
+
public Undocumented,
+
public Templ<int>
+
{
+
private:
+
Used *m_usedClass;
+
};
+

This will result in the following graph:

+
+ +
+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a grey border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A dark blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance.
  • +
+
+
+ + + + diff --git a/graph_legend.md5 b/graph_legend.md5 new file mode 100644 index 0000000..a06ed05 --- /dev/null +++ b/graph_legend.md5 @@ -0,0 +1 @@ +387ff8eb65306fa251338d3c9bd7bfff \ No newline at end of file diff --git a/graph_legend.png b/graph_legend.png new file mode 100644 index 0000000000000000000000000000000000000000..b6dea63c36126347d028b8d9528b4c40f93c8b65 GIT binary patch literal 19778 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 rZgvIkaQ44<@Uz8U + + + + + +Resource and persistent handle factory API: Main Page + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
Resource and persistent handle factory API Documentation
+
+
+
+
+ + + + diff --git a/jquery.js b/jquery.js new file mode 100644 index 0000000..3db33e6 --- /dev/null +++ b/jquery.js @@ -0,0 +1,72 @@ +/*! + * jQuery JavaScript Library v1.7.1 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Mon Nov 21 21:11:03 2011 -0500 + */ +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
t
";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType; +if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1 +},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=a(av); +ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length; +if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b +})}})(window); +/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*! + * jQuery UI Widget 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Widget + */ +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*! + * jQuery UI Mouse 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Mouse + * + * Depends: + * jquery.ui.widget.js + */ +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null; +p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*! + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' + + + +
+ +
+
php_raphf.c File Reference
+
+
+
#include "php.h"
+#include "php_ini.h"
+#include "ext/standard/info.h"
+#include "php_raphf.h"
+
+ + + + + +

+Macros

#define PHP_RAPHF_G   (&raphf_globals)
 
#define PHP_RAPHF_DEBUG_PHANDLES   0
 
+ + + +

+Typedefs

typedef int STATUS
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

php_resource_factory_tphp_resource_factory_init (php_resource_factory_t *f, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *data))
 Initialize a resource factory. More...
 
unsigned php_resource_factory_addref (php_resource_factory_t *rf)
 Increase the refcount of the resource factory. More...
 
void php_resource_factory_dtor (php_resource_factory_t *f)
 Destroy the resource factory. More...
 
void php_resource_factory_free (php_resource_factory_t **f)
 Destroy and free the resource factory. More...
 
void * php_resource_factory_handle_ctor (php_resource_factory_t *f, void *init_arg)
 Construct a resource by the resource factory f. More...
 
void * php_resource_factory_handle_copy (php_resource_factory_t *f, void *handle)
 Create a copy of the resource handle. More...
 
void php_resource_factory_handle_dtor (php_resource_factory_t *f, void *handle)
 Destroy (and free) the resource. More...
 
PHP_RAPHF_API STATUS php_persistent_handle_provide (const char *name_str, size_t name_len, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *))
 Register a persistent handle provider in MINIT. More...
 
php_persistent_handle_factory_tphp_persistent_handle_concede (php_persistent_handle_factory_t *a, const char *name_str, size_t name_len, const char *ident_str, size_t ident_len, php_persistent_handle_wakeup_t wakeup, php_persistent_handle_retire_t retire)
 Retrieve a persistent handle factory at runtime. More...
 
PHP_RAPHF_API void php_persistent_handle_abandon (php_persistent_handle_factory_t *a)
 Abandon the persistent handle factory. More...
 
void * php_persistent_handle_acquire (php_persistent_handle_factory_t *a, void *init_arg)
 Acquire a persistent handle. More...
 
void * php_persistent_handle_accrete (php_persistent_handle_factory_t *a, void *handle)
 
void php_persistent_handle_release (php_persistent_handle_factory_t *a, void *handle)
 Release a persistent handle. More...
 
void php_persistent_handle_cleanup (const char *name_str, size_t name_len, const char *ident_str, size_t ident_len)
 
HashTable * php_persistent_handle_statall (HashTable *ht)
 
php_resource_factory_ops_tphp_persistent_handle_get_resource_factory_ops (void)
 
 ZEND_END_ARG_INFO ()
 
 STD_PHP_INI_ENTRY ("raphf.persistent_handle.limit","-1", PHP_INI_SYSTEM, OnUpdateLong, persistent_handle.limit, zend_raphf_globals, raphf_globals) static HashTable *php_persistent_handles_global_hash
 
 PHP_MINIT_FUNCTION (raphf)
 
 PHP_MSHUTDOWN_FUNCTION (raphf)
 
 PHP_MINFO_FUNCTION (raphf)
 
+ + + + + +

+Variables

struct
+php_persistent_handle_globals 
persistent_handle
 
zend_module_entry raphf_module_entry
 
+

Macro Definition Documentation

+ +
+
+ + + + +
#define PHP_RAPHF_DEBUG_PHANDLES   0
+
+ +
+
+ + +

Typedef Documentation

+ +
+
+ + + + +
typedef int STATUS
+
+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
PHP_MINFO_FUNCTION (raphf )
+
+ +
+
+ +
+
+ + + + + + + + +
PHP_MINIT_FUNCTION (raphf )
+
+ +
+
+ +
+
+ + + + + + + + +
PHP_MSHUTDOWN_FUNCTION (raphf )
+
+ +
+
+ +
+
+ + + + + + + + +
PHP_RAPHF_API void php_persistent_handle_abandon (php_persistent_handle_factory_ta)
+
+ +

Abandon the persistent handle factory.

+

Destroy a php_persistent_handle_factory created by php_persistent_handle_concede(). If the memory for the factory was allocated, it will automatically be free'd.

+
Parameters
+ + +
athe persistent handle factory to destroy
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_persistent_handle_accrete (php_persistent_handle_factory_ta,
void * handle 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_persistent_handle_acquire (php_persistent_handle_factory_ta,
void * init_arg 
)
+
+ +

Acquire a persistent handle.

+

That is, either re-use a resource from the free list or create a new handle.

+

If a handle is acquired from the free list, the php_persistent_handle_wakeup() callback attached to this persistent handle factory is executed for that handle.

+
Parameters
+ + + +
athe persistent handle factory
init_argthe init_arg for php_resource_factory_handle_ctor()
+
+
+
Returns
the acquired resource
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void php_persistent_handle_cleanup (const char * name_str,
size_t name_len,
const char * ident_str,
size_t ident_len 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
php_persistent_handle_factory_t* php_persistent_handle_concede (php_persistent_handle_factory_ta,
const char * name_str,
size_t name_len,
const char * ident_str,
size_t ident_len,
php_persistent_handle_wakeup_t wakeup,
php_persistent_handle_retire_t retire 
)
+
+ +

Retrieve a persistent handle factory at runtime.

+

If a persistent handle provider has been registered for name_str, a new php_persistent_handle_factory creating resources in the ident_str namespace will be constructed.

+

The wakeup routine wakeup and the retire routine retire will be assigned to the new php_persistent_handle_factory.

+
Parameters
+ + + + + + + + +
apointer to a factory; allocated on the heap if NULL
name_strthe provider name, e.g. "http\Client\Curl"
name_lenthe provider name length, e.g. strlen("http\Client\Curl")
ident_strthe subsidiary namespace, e.g. "php.net:80"
ident_lenthe subsidiary namespace lenght, e.g. strlen("php.net:80")
wakeupany persistent handle wakeup routine
retireany persistent handle retire routine
+
+
+
Returns
a or an allocated persistent handle factory
+ +
+
+ +
+
+ + + + + + + + +
php_resource_factory_ops_t* php_persistent_handle_get_resource_factory_ops (void )
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PHP_RAPHF_API STATUS php_persistent_handle_provide (const char * name_str,
size_t name_len,
php_resource_factory_ops_tfops,
void * data,
void(*)(void *) dtor 
)
+
+ +

Register a persistent handle provider in MINIT.

+

Registers a factory provider for name_str with fops resource factory ops. Call this in your MINIT.

+

A php_resource_factory will be created with fops, data and dtor and will be stored together with a php_persistent_handle_list in the global raphf hash.

+

A php_persistent_handle_factory can then be retrieved by php_persistent_handle_concede() at runtime.

+
Parameters
+ + + + + + +
name_strthe provider name, e.g. "http\Client\Curl"
name_lenthe provider name length, e.g. strlen("http\Client\Curl")
fopsthe resource factory ops
dataopaque user data
dtordata destructor
+
+
+
Returns
SUCCESS/FAILURE
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void php_persistent_handle_release (php_persistent_handle_factory_ta,
void * handle 
)
+
+ +

Release a persistent handle.

+

That is, either put it back into the free list for later re-use or clean it up with php_resource_factory_handle_dtor().

+

If a handle is put back into the free list, the php_persistent_handle_retire() callback attached to this persistent handle factory is executed for that handle.

+
Parameters
+ + + +
athe persistent handle factory
handlethe handle to release
+
+
+ +
+
+ +
+
+ + + + + + + + +
HashTable* php_persistent_handle_statall (HashTable * ht)
+
+ +
+
+ +
+
+ + + + + + + + +
unsigned php_resource_factory_addref (php_resource_factory_trf)
+
+ +

Increase the refcount of the resource factory.

+
Parameters
+ + +
rfthe resource factory
+
+
+
Returns
the new refcount
+ +
+
+ +
+
+ + + + + + + + +
void php_resource_factory_dtor (php_resource_factory_tf)
+
+ +

Destroy the resource factory.

+

If the factory's refcount reaches 0, the dtor for data is called.

+
Parameters
+ + +
fthe resource factory
+
+
+ +

Referenced by php_persistent_handle_provide(), and php_resource_factory_free().

+ +
+
+ +
+
+ + + + + + + + +
void php_resource_factory_free (php_resource_factory_t ** f)
+
+ +

Destroy and free the resource factory.

+

Calls php_resource_factory_dtor() and frees \æ f if the factory's refcount reached 0.

+
Parameters
+ + +
fthe resource factory
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_resource_factory_handle_copy (php_resource_factory_tf,
void * handle 
)
+
+ +

Create a copy of the resource handle.

+
Parameters
+ + + +
fthe resource factory
handlethe resource to copy
+
+
+
Returns
the copy
+ +

Referenced by php_persistent_handle_accrete().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_resource_factory_handle_ctor (php_resource_factory_tf,
void * init_arg 
)
+
+ +

Construct a resource by the resource factory f.

+
Parameters
+ + + +
fthe resource factory
init_argfor the resource constructor
+
+
+
Returns
the new resource
+ +

Referenced by php_persistent_handle_acquire().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void php_resource_factory_handle_dtor (php_resource_factory_tf,
void * handle 
)
+
+ +

Destroy (and free) the resource.

+
Parameters
+ + + +
fthe resource factory
handlethe resource to destroy
+
+
+ +

Referenced by php_persistent_handle_release().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
php_resource_factory_t* php_resource_factory_init (php_resource_factory_tf,
php_resource_factory_ops_tfops,
void * data,
void(*)(void *data) dtor 
)
+
+ +

Initialize a resource factory.

+

Usually called by php_http_persistent_handle_provide().

+
Parameters
+ + + + + +
fthe factory to initialize; if NULL allocated on the heap
fopsthe resource ops to assign to the factory
dataopaque user data; may be NULL
dtora destructor for the data; may be NULL
+
+
+
Returns
f or an allocated resource factory
+ +

Referenced by php_persistent_handle_provide().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
STD_PHP_INI_ENTRY ("raphf.persistent_handle.limit" ,
"-1" ,
PHP_INI_SYSTEM ,
OnUpdateLong ,
persistent_handle. limit,
zend_raphf_globals ,
raphf_globals  
)
+
+ +
+
+ +
+
+ + + + + + + +
ZEND_END_ARG_INFO ()
+
+ +
+
+

Variable Documentation

+ +
+
+ + + + +
struct php_persistent_handle_globals persistent_handle
+
+ +
+
+ +
+
+ + + + +
zend_module_entry raphf_module_entry
+
+Initial value:
= {
+
STANDARD_MODULE_HEADER,
+
"raphf",
+
raphf_functions,
+
PHP_MINIT(raphf),
+
PHP_MSHUTDOWN(raphf),
+
NULL,
+
NULL,
+
PHP_MINFO(raphf),
+
PHP_RAPHF_VERSION,
+
ZEND_MODULE_GLOBALS(raphf),
+
PHP_GINIT(raphf),
+
PHP_GSHUTDOWN(raphf),
+
NULL,
+
STANDARD_MODULE_PROPERTIES_EX
+
}
+
+
+
+ + + + + diff --git a/php__raphf_8h.html b/php__raphf_8h.html new file mode 100644 index 0000000..82818d0 --- /dev/null +++ b/php__raphf_8h.html @@ -0,0 +1,1207 @@ + + + + + + +Resource and persistent handle factory API: php_raphf.h File Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
php_raphf.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Data Structures

struct  php_resource_factory_ops
 The resource ops consisting of a ctor, a copy ctor and a dtor. More...
 
struct  php_resource_factory
 The resource factory. More...
 
struct  php_persistent_handle_list
 Persistent handles storage. More...
 
struct  php_persistent_handle_provider
 Definition of a persistent handle provider. More...
 
struct  php_persistent_handle_factory
 Definition of a persistent handle factory. More...
 
struct  php_persistent_handle_factory.ident
 The ident for which this factory manages resources. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef void *(* php_resource_factory_handle_ctor_t )(void *opaque, void *init_arg)
 A resource constructor. More...
 
typedef void *(* php_resource_factory_handle_copy_t )(void *opaque, void *handle)
 The copy constructor of a resource. More...
 
typedef void(* php_resource_factory_handle_dtor_t )(void *opaque, void *handle)
 The destructor of a resource. More...
 
typedef struct
+php_resource_factory_ops 
php_resource_factory_ops_t
 The resource ops consisting of a ctor, a copy ctor and a dtor. More...
 
typedef struct php_resource_factory php_resource_factory_t
 The resource factory. More...
 
typedef struct
+php_persistent_handle_list 
php_persistent_handle_list_t
 Persistent handles storage. More...
 
typedef struct
+php_persistent_handle_provider 
php_persistent_handle_provider_t
 Definition of a persistent handle provider. More...
 
typedef struct
+php_persistent_handle_factory 
php_persistent_handle_factory_t
 
typedef void(* php_persistent_handle_wakeup_t )(php_persistent_handle_factory_t *f, void **handle)
 Wakeup the persistent handle on re-acquisition. More...
 
typedef void(* php_persistent_handle_retire_t )(php_persistent_handle_factory_t *f, void **handle)
 Retire the persistent handle on release. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

php_resource_factory_tphp_resource_factory_init (php_resource_factory_t *f, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *data))
 Initialize a resource factory. More...
 
unsigned php_resource_factory_addref (php_resource_factory_t *rf)
 Increase the refcount of the resource factory. More...
 
void php_resource_factory_dtor (php_resource_factory_t *f)
 Destroy the resource factory. More...
 
void php_resource_factory_free (php_resource_factory_t **f)
 Destroy and free the resource factory. More...
 
void * php_resource_factory_handle_ctor (php_resource_factory_t *f, void *init_arg)
 Construct a resource by the resource factory f. More...
 
void * php_resource_factory_handle_copy (php_resource_factory_t *f, void *handle)
 Create a copy of the resource handle. More...
 
void php_resource_factory_handle_dtor (php_resource_factory_t *f, void *handle)
 Destroy (and free) the resource. More...
 
int php_persistent_handle_provide (const char *name_str, size_t name_len, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *))
 Register a persistent handle provider in MINIT. More...
 
php_persistent_handle_factory_tphp_persistent_handle_concede (php_persistent_handle_factory_t *a, const char *name_str, size_t name_len, const char *ident_str, size_t ident_len, php_persistent_handle_wakeup_t wakeup, php_persistent_handle_retire_t retire)
 Retrieve a persistent handle factory at runtime. More...
 
void php_persistent_handle_abandon (php_persistent_handle_factory_t *a)
 Abandon the persistent handle factory. More...
 
void * php_persistent_handle_acquire (php_persistent_handle_factory_t *a, void *init_arg)
 Acquire a persistent handle. More...
 
void php_persistent_handle_release (php_persistent_handle_factory_t *a, void *handle)
 Release a persistent handle. More...
 
void * php_persistent_handle_accrete (php_persistent_handle_factory_t *a, void *handle)
 Copy a persistent handle. More...
 
php_resource_factory_ops_tphp_persistent_handle_get_resource_factory_ops (void)
 Retrieve persistent handle resource factory ops. More...
 
void php_persistent_handle_cleanup (const char *name_str, size_t name_len, const char *ident_str, size_t ident_len)
 Clean persistent handles up. More...
 
HashTable * php_persistent_handle_statall (HashTable *ht)
 Retrieve statistics about the current process/thread's persistent handles. More...
 
+

Data Structure Documentation

+ +
+
+ + + + +
struct php_resource_factory_ops
+
+

The resource ops consisting of a ctor, a copy ctor and a dtor.

+

Define this ops and register them with php_persistent_handle_provide() in MINIT.

+
+ + + + + + + + + + +
Data Fields
+php_resource_factory_handle_copy_t +copy +The resource's copy constructor.
+php_resource_factory_handle_ctor_t +ctor +The resource constructor.
+php_resource_factory_handle_dtor_t +dtor +The resource's destructor.
+ +
+
+ +
+
+ + + + +
struct php_persistent_handle_list
+
+

Persistent handles storage.

+
+ + + + + + + +
Data Fields
+HashTable +free +Storage of free resources.
+ulong +used +Count of acquired resources.
+ +
+
+ +
+
+ + + + +
struct php_persistent_handle_provider
+
+

Definition of a persistent handle provider.

+

Holds a resource factory an a persistent handle list.

+
+Collaboration diagram for php_persistent_handle_provider:
+
+
Collaboration graph
+ + +
[legend]
+ + + + + + + + +
Data Fields
+php_persistent_handle_list_t +list +The list of free handles.

Hash of "ident" => array(handles) entries. Persistent handles are acquired out of this list.

+
+php_resource_factory_t +rf +The resource factory.

New handles are created by this factory.

+
+ +
+
+ +
+
+ + + + +
struct php_persistent_handle_factory
+
+

Definition of a persistent handle factory.

+

php_persistent_handle_concede() will return a pointer to a php_persistent_handle_factory if a provider for the name_str has been registered with php_persistent_handle_provide().

+
+Collaboration diagram for php_persistent_handle_factory:
+
+
Collaboration graph
+ + +
[legend]
+ + + + + + + + + + + + + + + + + +
Data Fields
+unsigned +free_on_abandon:1 +Whether it has to be free'd on php_persistent_handle_abandon()
+struct php_persistent_handle_factory +ident +The ident for which this factory manages resources.
+php_persistent_handle_provider_t * +provider +The persistent handle provider.
+php_persistent_handle_retire_t +retire +The persistent handle retire routine; may be NULL.
+php_persistent_handle_wakeup_t +wakeup +The persistent handle wakeup routine; may be NULL.
+ +
+
+ +
+
+ + + + +
struct php_persistent_handle_factory.ident
+
+

The ident for which this factory manages resources.

+
+ + + + + + + +
Data Fields
+size_t +len +ident length
+char * +str +ident string
+ +
+
+

Typedef Documentation

+ + + +
+
+ +

Persistent handles storage.

+ +
+
+ +
+
+ +

Definition of a persistent handle provider.

+

Holds a resource factory an a persistent handle list.

+ +
+
+ +
+
+ + + + +
typedef void(* php_persistent_handle_retire_t)(php_persistent_handle_factory_t *f, void **handle)
+
+ +

Retire the persistent handle on release.

+ +
+
+ +
+
+ + + + +
typedef void(* php_persistent_handle_wakeup_t)(php_persistent_handle_factory_t *f, void **handle)
+
+ +

Wakeup the persistent handle on re-acquisition.

+ +
+
+ +
+
+ + + + +
typedef void*(* php_resource_factory_handle_copy_t)(void *opaque, void *handle)
+
+ +

The copy constructor of a resource.

+
Parameters
+ + + +
opaquethe factory's data
handlethe (persistent) handle to copy
+
+
+ +
+
+ +
+
+ + + + +
typedef void*(* php_resource_factory_handle_ctor_t)(void *opaque, void *init_arg)
+
+ +

A resource constructor.

+
Parameters
+ + + +
opaqueis the data from php_persistent_handle_provide()
init_argis the init_arg from php_resource_factory_init()
+
+
+
Returns
the created (persistent) handle
+ +
+
+ +
+
+ + + + +
typedef void(* php_resource_factory_handle_dtor_t)(void *opaque, void *handle)
+
+ +

The destructor of a resource.

+
Parameters
+ + + +
opaquethe factory's data
handlethe handle to destroy
+
+
+ +
+
+ +
+
+ +

The resource ops consisting of a ctor, a copy ctor and a dtor.

+

Define this ops and register them with php_persistent_handle_provide() in MINIT.

+ +
+
+ +
+
+ + + + +
typedef struct php_resource_factory php_resource_factory_t
+
+ +

The resource factory.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
void php_persistent_handle_abandon (php_persistent_handle_factory_ta)
+
+ +

Abandon the persistent handle factory.

+

Destroy a php_persistent_handle_factory created by php_persistent_handle_concede(). If the memory for the factory was allocated, it will automatically be free'd.

+
Parameters
+ + +
athe persistent handle factory to destroy
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_persistent_handle_accrete (php_persistent_handle_factory_ta,
void * handle 
)
+
+ +

Copy a persistent handle.

+

Let the underlying resource factory copy the handle.

+
Parameters
+ + + +
athe persistent handle factory
handlethe resource to accrete
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_persistent_handle_acquire (php_persistent_handle_factory_ta,
void * init_arg 
)
+
+ +

Acquire a persistent handle.

+

That is, either re-use a resource from the free list or create a new handle.

+

If a handle is acquired from the free list, the php_persistent_handle_factory::wakeup callback will be executed for that handle.

+
Parameters
+ + + +
athe persistent handle factory
init_argthe init_arg for php_resource_factory_handle_ctor()
+
+
+
Returns
the acquired resource
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void php_persistent_handle_cleanup (const char * name_str,
size_t name_len,
const char * ident_str,
size_t ident_len 
)
+
+ +

Clean persistent handles up.

+

Destroy persistent handles of provider name_str and in subsidiary namespace ident_str.

+

If name_str is NULL, all persistent handles of all providers with a matching ident_str will be cleaned up.

+

If ident_str is NULL all persistent handles of the provider will be cleaned up.

+

Ergo, if both, name_str and ident_str are NULL, then all persistent handles will be cleaned up.

+

You must call this in MSHUTDOWN, if your resource factory ops hold a registered php_resource_factory::dtor, else the dtor will point to memory not any more available if the extension has already been unloaded.

+
Parameters
+ + + + + +
name_strthe provider name; may be NULL
name_lenthe provider name length
ident_strthe subsidiary namespace name; may be NULL
ident_lenthe subsidiary namespace name length
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
php_persistent_handle_factory_t* php_persistent_handle_concede (php_persistent_handle_factory_ta,
const char * name_str,
size_t name_len,
const char * ident_str,
size_t ident_len,
php_persistent_handle_wakeup_t wakeup,
php_persistent_handle_retire_t retire 
)
+
+ +

Retrieve a persistent handle factory at runtime.

+

If a persistent handle provider has been registered for name_str, a new php_persistent_handle_factory creating resources in the ident_str namespace will be constructed.

+

The wakeup routine wakeup and the retire routine retire will be assigned to the new php_persistent_handle_factory.

+
Parameters
+ + + + + + + + +
apointer to a factory; allocated on the heap if NULL
name_strthe provider name, e.g. "http\Client\Curl"
name_lenthe provider name length, e.g. strlen("http\Client\Curl")
ident_strthe subsidiary namespace, e.g. "php.net:80"
ident_lenthe subsidiary namespace lenght, e.g. strlen("php.net:80")
wakeupany persistent handle wakeup routine
retireany persistent handle retire routine
+
+
+
Returns
a or an allocated persistent handle factory
+ +
+
+ +
+
+ + + + + + + + +
php_resource_factory_ops_t* php_persistent_handle_get_resource_factory_ops (void )
+
+ +

Retrieve persistent handle resource factory ops.

+

These ops can be used to mask a persistent handle factory as resource factory itself, so you can transparently use the resource factory API, both for persistent and non-persistent ressources.

+

Example:

+
php_resource_factory_t *create_my_rf(const char *persistent_id_str,
+
size_t persistent_id_len TSRMLS_DC)
+
{
+ +
+
if (persistent_id_str) {
+ + +
+ +
+
pf = php_persistent_handle_concede(NULL, "my", 2,
+
persistent_id_str, persistent_id_len, NULL, NULL TSRMLS_CC);
+
+ +
} else {
+
rf = php_resource_factory_init(NULL, &myops, NULL, NULL);
+
}
+
return rf;
+
}
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int php_persistent_handle_provide (const char * name_str,
size_t name_len,
php_resource_factory_ops_tfops,
void * data,
void(*)(void *) dtor 
)
+
+ +

Register a persistent handle provider in MINIT.

+

Registers a factory provider for name_str with fops resource factory ops. Call this in your MINIT.

+

A php_resource_factory will be created with fops, data and dtor and will be stored together with a php_persistent_handle_list in the global raphf hash.

+

A php_persistent_handle_factory can then be retrieved by php_persistent_handle_concede() at runtime.

+
Parameters
+ + + + + + +
name_strthe provider name, e.g. "http\Client\Curl"
name_lenthe provider name length, e.g. strlen("http\Client\Curl")
fopsthe resource factory ops
dataopaque user data
dtordata destructor
+
+
+
Returns
SUCCESS/FAILURE
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void php_persistent_handle_release (php_persistent_handle_factory_ta,
void * handle 
)
+
+ +

Release a persistent handle.

+

That is, either put it back into the free list for later re-use or clean it up with php_resource_factory_handle_dtor().

+

If a handle is put back into the free list, the php_persistent_handle_factory::retire callback will be executed for that handle.

+
Parameters
+ + + +
athe persistent handle factory
handlethe handle to release
+
+
+ +
+
+ +
+
+ + + + + + + + +
HashTable* php_persistent_handle_statall (HashTable * ht)
+
+ +

Retrieve statistics about the current process/thread's persistent handles.

+
Returns
a HashTable like:
[
+
"name" => [
+
"ident" => [
+
"used" => 1,
+
"free" => 0,
+
]
+
]
+
]
+
+ +
+
+ +
+
+ + + + + + + + +
unsigned php_resource_factory_addref (php_resource_factory_trf)
+
+ +

Increase the refcount of the resource factory.

+
Parameters
+ + +
rfthe resource factory
+
+
+
Returns
the new refcount
+ +
+
+ +
+
+ + + + + + + + +
void php_resource_factory_dtor (php_resource_factory_tf)
+
+ +

Destroy the resource factory.

+

If the factory's refcount reaches 0, the dtor for data is called.

+
Parameters
+ + +
fthe resource factory
+
+
+ +
+
+ +
+
+ + + + + + + + +
void php_resource_factory_free (php_resource_factory_t ** f)
+
+ +

Destroy and free the resource factory.

+

Calls php_resource_factory_dtor() and frees \æ f if the factory's refcount reached 0.

+
Parameters
+ + +
fthe resource factory
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_resource_factory_handle_copy (php_resource_factory_tf,
void * handle 
)
+
+ +

Create a copy of the resource handle.

+
Parameters
+ + + +
fthe resource factory
handlethe resource to copy
+
+
+
Returns
the copy
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void* php_resource_factory_handle_ctor (php_resource_factory_tf,
void * init_arg 
)
+
+ +

Construct a resource by the resource factory f.

+
Parameters
+ + + +
fthe resource factory
init_argfor the resource constructor
+
+
+
Returns
the new resource
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
void php_resource_factory_handle_dtor (php_resource_factory_tf,
void * handle 
)
+
+ +

Destroy (and free) the resource.

+
Parameters
+ + + +
fthe resource factory
handlethe resource to destroy
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
php_resource_factory_t* php_resource_factory_init (php_resource_factory_tf,
php_resource_factory_ops_tfops,
void * data,
void(*)(void *data) dtor 
)
+
+ +

Initialize a resource factory.

+

If you register a dtor for a resource factory used with a persistent handle provider, be sure to call php_persistent_handle_cleanup() for your registered provider in MSHUTDOWN, else the dtor will point to no longer available memory if the extension has already been unloaded.

+
Parameters
+ + + + + +
fthe factory to initialize; if NULL allocated on the heap
fopsthe resource ops to assign to the factory
dataopaque user data; may be NULL
dtora destructor for the data; may be NULL
+
+
+
Returns
f or an allocated resource factory
+ +
+
+
+
+ + + + diff --git a/php__raphf_8h.js b/php__raphf_8h.js new file mode 100644 index 0000000..061a8ae --- /dev/null +++ b/php__raphf_8h.js @@ -0,0 +1,54 @@ +var php__raphf_8h = +[ + [ "php_resource_factory_ops", "php__raphf_8h.html#structphp__resource__factory__ops", [ + [ "copy", "php__raphf_8h.html#a8094f85df976aff73148bc579ae72e38", null ], + [ "ctor", "php__raphf_8h.html#a044b07071758dbc53f87bfd212400ac0", null ], + [ "dtor", "php__raphf_8h.html#acb8a7a04b86f08db41a2d6232676c65c", null ] + ] ], + [ "php_resource_factory", "structphp__resource__factory.html", "structphp__resource__factory" ], + [ "php_persistent_handle_list", "php__raphf_8h.html#structphp__persistent__handle__list", [ + [ "free", "php__raphf_8h.html#a653a4a0e9c39ad942e9573e197f62974", null ], + [ "used", "php__raphf_8h.html#a119a44fd9f5ae066b6d77e7a35a25cd0", null ] + ] ], + [ "php_persistent_handle_provider", "php__raphf_8h.html#structphp__persistent__handle__provider", [ + [ "list", "php__raphf_8h.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0", null ], + [ "rf", "php__raphf_8h.html#a8204714f100b74b028652951ca40abd3", null ] + ] ], + [ "php_persistent_handle_factory", "php__raphf_8h.html#structphp__persistent__handle__factory", [ + [ "free_on_abandon", "php__raphf_8h.html#a84ffa94401b9869e14c190be4bb1b6be", null ], + [ "ident", "php__raphf_8h.html#ae874c03caffa8eaa265dd52ebf593c02", null ], + [ "provider", "php__raphf_8h.html#a43aabcbe7ec4b5ff463f74cfcf788f51", null ], + [ "retire", "php__raphf_8h.html#a9299f3f0821061ad93d15c10cf735b6b", null ], + [ "wakeup", "php__raphf_8h.html#a6633b7c860e4538942e0367d64ed5af7", null ] + ] ], + [ "php_persistent_handle_factory.ident", "php__raphf_8h.html#structphp__persistent__handle__factory_8ident", [ + [ "len", "php__raphf_8h.html#af5a8e923f8cd24b56b3bab32358cc58a", null ], + [ "str", "php__raphf_8h.html#a341be97d9aff90c9978347f66f945b77", null ] + ] ], + [ "php_persistent_handle_factory_t", "php__raphf_8h.html#a833eaa62ffcc217e5749c26c18885b17", null ], + [ "php_persistent_handle_list_t", "php__raphf_8h.html#a07f599598d2b87b188f39871d026c177", null ], + [ "php_persistent_handle_provider_t", "php__raphf_8h.html#a31f0595f4f726f762790cef844568fc4", null ], + [ "php_persistent_handle_retire_t", "php__raphf_8h.html#a8f7d6389c67478ca0b99729a5dd3d305", null ], + [ "php_persistent_handle_wakeup_t", "php__raphf_8h.html#a681ca1f7c1249199b45270be60c721c6", null ], + [ "php_resource_factory_handle_copy_t", "php__raphf_8h.html#a80169af0f2adacf3ec7c7ee1dfb19f96", null ], + [ "php_resource_factory_handle_ctor_t", "php__raphf_8h.html#a1c5d952a60130d2a68c8d68db2bebbd8", null ], + [ "php_resource_factory_handle_dtor_t", "php__raphf_8h.html#a472a7e1909aed64d00d43ea5c112b854", null ], + [ "php_resource_factory_ops_t", "php__raphf_8h.html#a29e0d7a66e441a5265ddf2f0adbbb3af", null ], + [ "php_resource_factory_t", "php__raphf_8h.html#a4817c4b3d4077c48dff36376487ba8d4", null ], + [ "php_persistent_handle_abandon", "php__raphf_8h.html#ab12ec2da7189e16fbed40a3b73bc9ee2", null ], + [ "php_persistent_handle_accrete", "php__raphf_8h.html#ae8124f3f73e96e2193ae03c5519d2763", null ], + [ "php_persistent_handle_acquire", "php__raphf_8h.html#af6636e870497be0699d2781e5fc8a2a9", null ], + [ "php_persistent_handle_cleanup", "php__raphf_8h.html#a0d661d1f880270146012eb8781e5343e", null ], + [ "php_persistent_handle_concede", "php__raphf_8h.html#a0a266874dafb69cf2b040378d4033901", null ], + [ "php_persistent_handle_get_resource_factory_ops", "php__raphf_8h.html#a93458ab12d810f0fd545fb1464ba9eca", null ], + [ "php_persistent_handle_provide", "php__raphf_8h.html#a3cbbe29c8a4ed9858c921c8ee539de59", null ], + [ "php_persistent_handle_release", "php__raphf_8h.html#af08ee05c51d52200755d24f6f52df144", null ], + [ "php_persistent_handle_statall", "php__raphf_8h.html#ae174fbe124d4cb6010e218a68379bd18", null ], + [ "php_resource_factory_addref", "php__raphf_8h.html#ae8be369197905047ffbd05c0ca80f245", null ], + [ "php_resource_factory_dtor", "php__raphf_8h.html#a016b8a4159e698f915ab967711696847", null ], + [ "php_resource_factory_free", "php__raphf_8h.html#a7f012d685f5f7c08f50288b61232e689", null ], + [ "php_resource_factory_handle_copy", "php__raphf_8h.html#a08db5f3698f2d0bf3d2f20dcf4e7b2b4", null ], + [ "php_resource_factory_handle_ctor", "php__raphf_8h.html#a98d02dc80dd83095b8f901954350840c", null ], + [ "php_resource_factory_handle_dtor", "php__raphf_8h.html#a97dbb9d342f33205b92374c586676bc6", null ], + [ "php_resource_factory_init", "php__raphf_8h.html#ad20f10c53e3f33756638da98819367f0", null ] +]; \ No newline at end of file diff --git a/php__raphf_8h_source.html b/php__raphf_8h_source.html new file mode 100644 index 0000000..e3add35 --- /dev/null +++ b/php__raphf_8h_source.html @@ -0,0 +1,316 @@ + + + + + + +Resource and persistent handle factory API: php_raphf.h Source File + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+
+
php_raphf.h
+
+
+Go to the documentation of this file.
1 /*
+
2  +--------------------------------------------------------------------+
+
3  | PECL :: raphf |
+
4  +--------------------------------------------------------------------+
+
5  | Redistribution and use in source and binary forms, with or without |
+
6  | modification, are permitted provided that the conditions mentioned |
+
7  | in the accompanying LICENSE file are met. |
+
8  +--------------------------------------------------------------------+
+
9  | Copyright (c) 2013, Michael Wallner <mike@php.net> |
+
10  +--------------------------------------------------------------------+
+
11 */
+
12 
+
13 #ifndef PHP_RAPHF_H
+
14 #define PHP_RAPHF_H
+
15 
+
16 #ifndef DOXYGEN
+
17 
+
18 extern zend_module_entry raphf_module_entry;
+
19 #define phpext_raphf_ptr &raphf_module_entry
+
20 
+
21 #define PHP_RAPHF_VERSION "1.0.4"
+
22 
+
23 #ifdef PHP_WIN32
+
24 # define PHP_RAPHF_API __declspec(dllexport)
+
25 #elif defined(__GNUC__) && __GNUC__ >= 4
+
26 # define PHP_RAPHF_API extern __attribute__ ((visibility("default")))
+
27 #else
+
28 # define PHP_RAPHF_API extern
+
29 #endif
+
30 
+
31 #ifdef ZTS
+
32 # include "TSRM.h"
+
33 #endif
+
34 
+
35 #endif
+
36 
+
44 typedef void *(*php_resource_factory_handle_ctor_t)(void *opaque,
+
45  void *init_arg TSRMLS_DC);
+
46 
+
53 typedef void *(*php_resource_factory_handle_copy_t)(void *opaque,
+
54  void *handle TSRMLS_DC);
+
55 
+
62 typedef void (*php_resource_factory_handle_dtor_t)(void *opaque,
+
63  void *handle TSRMLS_DC);
+
64 
+
71 typedef struct php_resource_factory_ops {
+ + + + +
79 
+
83 typedef struct php_resource_factory {
+ +
87  void *data;
+
89  void (*dtor)(void *data);
+
91  unsigned refcount;
+ +
93 
+ + +
110  void (*dtor)(void *data));
+
111 
+
118 PHP_RAPHF_API unsigned php_resource_factory_addref(php_resource_factory_t *rf);
+
119 
+ +
128 
+
137 PHP_RAPHF_API void php_resource_factory_free(php_resource_factory_t **f);
+
138 
+ +
147  void *init_arg TSRMLS_DC);
+
148 
+ +
157  void *handle TSRMLS_DC);
+
158 
+ +
166  void *handle TSRMLS_DC);
+
167 
+ +
173  HashTable free;
+
175  ulong used;
+ +
177 
+ + +
189 
+ + +
196 
+ +
198 
+ +
203  php_persistent_handle_factory_t *f, void **handle TSRMLS_DC);
+ +
208  php_persistent_handle_factory_t *f, void **handle TSRMLS_DC);
+
209 
+ + + + +
224 
+
226  struct {
+
228  char *str;
+
230  size_t len;
+
231  } ident;
+
232 
+
234  unsigned free_on_abandon:1;
+
235 };
+
236 
+
257 PHP_RAPHF_API int /* SUCCESS|FAILURE */ php_persistent_handle_provide(
+
258  const char *name_str, size_t name_len, php_resource_factory_ops_t *fops,
+
259  void *data, void (*dtor)(void *) TSRMLS_DC);
+
260 
+ +
281  php_persistent_handle_factory_t *a, const char *name_str,
+
282  size_t name_len, const char *ident_str, size_t ident_len,
+ +
284  php_persistent_handle_retire_t retire TSRMLS_DC);
+
285 
+
295 PHP_RAPHF_API void php_persistent_handle_abandon(
+ +
297 
+
311 PHP_RAPHF_API void *php_persistent_handle_acquire(
+
312  php_persistent_handle_factory_t *a, void *init_arg TSRMLS_DC);
+
313 
+
327 PHP_RAPHF_API void php_persistent_handle_release(
+
328  php_persistent_handle_factory_t *a, void *handle TSRMLS_DC);
+
329 
+
338 PHP_RAPHF_API void *php_persistent_handle_accrete(
+
339  php_persistent_handle_factory_t *a, void *handle TSRMLS_DC);
+
340 
+
373 PHP_RAPHF_API php_resource_factory_ops_t *
+ +
375 
+
400 PHP_RAPHF_API void php_persistent_handle_cleanup(const char *name_str,
+
401  size_t name_len, const char *ident_str, size_t ident_len TSRMLS_DC);
+
402 
+
418 PHP_RAPHF_API HashTable *php_persistent_handle_statall(HashTable *ht TSRMLS_DC);
+
419 
+
420 #endif /* PHP_RAPHF_H */
+
421 
+
422 
+
423 /*
+
424  * Local variables:
+
425  * tab-width: 4
+
426  * c-basic-offset: 4
+
427  * End:
+
428  * vim600: noet sw=4 ts=4 fdm=marker
+
429  * vim<600: noet sw=4 ts=4
+
430  */
+
void(* php_persistent_handle_retire_t)(php_persistent_handle_factory_t *f, void **handle)
Retire the persistent handle on release.
Definition: php_raphf.h:207
+
void * data
Opaque user data.
Definition: php_raphf.h:87
+
php_resource_factory_handle_copy_t copy
The resource&#39;s copy constructor.
Definition: php_raphf.h:75
+
ulong used
Count of acquired resources.
Definition: php_raphf.h:175
+
php_persistent_handle_list_t list
The list of free handles.
Definition: php_raphf.h:188
+
void php_resource_factory_free(php_resource_factory_t **f)
Destroy and free the resource factory.
+
php_resource_factory_handle_dtor_t dtor
The resource&#39;s destructor.
Definition: php_raphf.h:77
+
void(* dtor)(void *data)
User data destructor.
Definition: php_raphf.h:89
+
php_persistent_handle_factory_t * php_persistent_handle_concede(php_persistent_handle_factory_t *a, const char *name_str, size_t name_len, const char *ident_str, size_t ident_len, php_persistent_handle_wakeup_t wakeup, php_persistent_handle_retire_t retire)
Retrieve a persistent handle factory at runtime.
+
unsigned php_resource_factory_addref(php_resource_factory_t *rf)
Increase the refcount of the resource factory.
+
php_resource_factory_t * php_resource_factory_init(php_resource_factory_t *f, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *data))
Initialize a resource factory.
+
void php_persistent_handle_release(php_persistent_handle_factory_t *a, void *handle)
Release a persistent handle.
+
The resource ops consisting of a ctor, a copy ctor and a dtor.
Definition: php_raphf.h:71
+
void *(* php_resource_factory_handle_ctor_t)(void *opaque, void *init_arg)
A resource constructor.
Definition: php_raphf.h:44
+
void(* php_resource_factory_handle_dtor_t)(void *opaque, void *handle)
The destructor of a resource.
Definition: php_raphf.h:62
+
unsigned refcount
How often this factory is referenced.
Definition: php_raphf.h:91
+
void php_resource_factory_handle_dtor(php_resource_factory_t *f, void *handle)
Destroy (and free) the resource.
+
struct php_resource_factory_ops php_resource_factory_ops_t
The resource ops consisting of a ctor, a copy ctor and a dtor.
+
void(* php_persistent_handle_wakeup_t)(php_persistent_handle_factory_t *f, void **handle)
Wakeup the persistent handle on re-acquisition.
Definition: php_raphf.h:202
+
void php_resource_factory_dtor(php_resource_factory_t *f)
Destroy the resource factory.
+
Persistent handles storage.
Definition: php_raphf.h:171
+
php_persistent_handle_retire_t retire
The persistent handle retire routine; may be NULL.
Definition: php_raphf.h:223
+
HashTable * php_persistent_handle_statall(HashTable *ht)
Retrieve statistics about the current process/thread&#39;s persistent handles.
+
HashTable free
Storage of free resources.
Definition: php_raphf.h:173
+
Definition of a persistent handle factory.
Definition: php_raphf.h:217
+
Definition of a persistent handle provider.
Definition: php_raphf.h:182
+
struct php_resource_factory php_resource_factory_t
The resource factory.
+
php_persistent_handle_provider_t * provider
The persistent handle provider.
Definition: php_raphf.h:219
+
void * php_resource_factory_handle_copy(php_resource_factory_t *f, void *handle)
Create a copy of the resource handle.
+
php_resource_factory_t rf
The resource factory.
Definition: php_raphf.h:194
+
void * php_persistent_handle_accrete(php_persistent_handle_factory_t *a, void *handle)
Copy a persistent handle.
+
struct php_persistent_handle_provider php_persistent_handle_provider_t
Definition of a persistent handle provider.
+
php_resource_factory_handle_ctor_t ctor
The resource constructor.
Definition: php_raphf.h:73
+
void * php_persistent_handle_acquire(php_persistent_handle_factory_t *a, void *init_arg)
Acquire a persistent handle.
+
void * php_resource_factory_handle_ctor(php_resource_factory_t *f, void *init_arg)
Construct a resource by the resource factory f.
+
The resource factory.
Definition: php_raphf.h:83
+
void *(* php_resource_factory_handle_copy_t)(void *opaque, void *handle)
The copy constructor of a resource.
Definition: php_raphf.h:53
+
php_resource_factory_ops_t * php_persistent_handle_get_resource_factory_ops(void)
Retrieve persistent handle resource factory ops.
+
struct php_persistent_handle_list php_persistent_handle_list_t
Persistent handles storage.
+
void php_persistent_handle_cleanup(const char *name_str, size_t name_len, const char *ident_str, size_t ident_len)
Clean persistent handles up.
+
int php_persistent_handle_provide(const char *name_str, size_t name_len, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *))
Register a persistent handle provider in MINIT.
+
void php_persistent_handle_abandon(php_persistent_handle_factory_t *a)
Abandon the persistent handle factory.
+
unsigned free_on_abandon
Whether it has to be free&#39;d on php_persistent_handle_abandon()
Definition: php_raphf.h:234
+
php_resource_factory_ops_t fops
The resource ops.
Definition: php_raphf.h:85
+
struct php_persistent_handle_factory::@0 ident
The ident for which this factory manages resources.
+
php_persistent_handle_wakeup_t wakeup
The persistent handle wakeup routine; may be NULL.
Definition: php_raphf.h:221
+
+
+ + + + diff --git a/raphf.png b/raphf.png new file mode 100644 index 0000000000000000000000000000000000000000..2cb0df3ad1be5921edf7c25323a822f993cd5f55 GIT binary patch literal 28796 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 literal 0 HcmV?d00001 diff --git a/resize.js b/resize.js new file mode 100644 index 0000000..a80dece --- /dev/null +++ b/resize.js @@ -0,0 +1,93 @@ +var cookie_namespace = 'doxygen'; +var sidenav,navtree,content,header; + +function readCookie(cookie) +{ + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) + { + var index = document.cookie.indexOf(myCookie); + if (index != -1) + { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) + { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + return 0; +} + +function writeCookie(cookie, val, expiration) +{ + if (val==undefined) return; + if (expiration == null) + { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + } + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; +} + +function resizeWidth() +{ + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + writeCookie('width',sidenavWidth, null); +} + +function restoreWidth(navWidth) +{ + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+6+"px"}); + sidenav.css({width:navWidth + "px"}); +} + +function resizeHeight() +{ + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + content.css({height:windowHeight + "px"}); + navtree.css({height:windowHeight + "px"}); + sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); +} + +function initResizable() +{ + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(window).resize(function() { resizeHeight(); }); + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(document).bind('touchmove',function(e){ + try { + var target = e.target; + while (target) { + if ($(target).css('-webkit-overflow-scrolling')=='touch') return; + target = target.parentNode; + } + e.preventDefault(); + } catch(err) { + e.preventDefault(); + } + }); +} + + diff --git a/run-tests_8php.html b/run-tests_8php.html new file mode 100644 index 0000000..4f166f4 --- /dev/null +++ b/run-tests_8php.html @@ -0,0 +1,1872 @@ + + + + + + +raphf: run-tests.php File Reference + + + + + + + + + +

+
+ +
+
run-tests.php File Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

if(getenv('TEST_PHP_EXECUTABLE'))
+if(getenv('TEST_PHP_CGI_EXECUTABLE')) 
verify_config ()
 
 write_information ($show_html)
 
 save_or_mail_results ()
 
foreach($optionals as $dir)
+foreach($exts_to_test as $key=>
+ $val) foreach($test_dirs as
+$dir) foreach($user_tests as
+$dir) 
find_files ($dir, $is_ext_dir=false, $ignore=false)
 
 test_name ($name)
 
 test_sort ($a, $b)
 
 mail_qa_team ($data, $compression, $status=false)
 
 save_text ($filename, $text, $filename_copy=null)
 
 error_report ($testname, $logname, $tested)
 
 system_with_timeout ($commandline, $env=null, $stdin=null)
 
 run_all_tests ($test_files, $env, $redir_tested=null)
 
 show_file_block ($file, $block, $section=null)
 
 run_test ($php, $file, $env)
 
 comp_line ($l1, $l2, $is_reg)
 
 count_array_diff ($ar1, $ar2, $is_reg, $w, $idx1, $idx2, $cnt1, $cnt2, $steps)
 
 generate_array_diff ($ar1, $ar2, $is_reg, $w)
 
 generate_diff ($wanted, $wanted_re, $output)
 
 error ($message)
 
 settings2array ($settings, &$ini_settings)
 
 settings2params (&$ini_settings)
 
 compute_summary ()
 
 get_summary ($show_ext_summary, $show_html)
 
 show_start ($start_time)
 
 show_end ($end_time)
 
 show_summary ()
 
 show_redirect_start ($tests, $tested, $tested_file)
 
 show_redirect_ends ($tests, $tested, $tested_file)
 
 show_test ($test_idx, $shortname)
 
 show_result ($result, $tested, $tested_file, $extra= '', $temp_filenames=null)
 
 junit_init ()
 
 junit_save_xml ()
 
 junit_get_suite_xml ($suite_name= '')
 
 junit_enabled ()
 
 junit_mark_test_as ($type, $file_name, $test_name, $time=null, $message= '', $details= '')
 
 junit_suite_record ($suite, $param, $value=1)
 
 junit_get_timer ($file_name)
 
 junit_start_timer ($file_name)
 
 junit_get_suitename_for ($file_name)
 
 junit_path_to_classname ($file_name)
 
 junit_init_suite ($suite_name)
 
 junit_finish_timer ($file_name)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Variables

if(!extension_loaded('pcre'))
+if(!function_exists('proc_open'))
+if(!defined("PHP_VERSION_ID"))
+if(PHP_VERSION_ID< 50300) if(ini_get('date.timezone')== '') 
$CUR_DIR = getcwd()
 
 $cwd = getcwd()
 
 $valgrind_version = 0
 
 $valgrind_header = ''
 
if(PHP_MAJOR_VERSION< 6) $environment = isset($_ENV) ? $_ENV : array()
 
if((substr(PHP_OS, 0, 3)=="WIN")&&empty($environment["SystemRoot"])) $php = null
 
 $php_cgi = null
 
if(getenv('TEST_PHP_LOG_FORMAT')) else
 
 $exts_to_test = array()
 
 $ini_overwrites
 
const PHP_QA_EMAIL 'qa-reports@lists.php.net'
 
const QA_SUBMISSION_PAGE 'http://qa.php.net/buildtest-process.php'
 
const QA_REPORTS_PAGE 'http://qa.php.net/reports'
 
 $test_files = array()
 
 $redir_tests = array()
 
 $test_results = array()
 
 $PHP_FAILED_TESTS = array('BORKED' => array(), 'FAILED' => array(), 'WARNED' => array(), 'LEAKED' => array(), 'XFAILED' => array())
 
 $failed_tests_file = false
 
 $pass_option_n = false
 
 $pass_options = ''
 
 $compression = 0
 
 $output_file = $CUR_DIR . '/php_test_results_' . date('Ymd_Hi') . '.txt'
 
if($compression) $just_save_results = false
 
 $leak_check = false
 
 $html_output = false
 
 $html_file = null
 
 $temp_source = null
 
 $temp_target = null
 
 $temp_urlbase = null
 
 $conf_passed = null
 
 $no_clean = false
 
 $cfgtypes = array('show', 'keep')
 
 $cfgfiles = array('skip', 'php', 'clean', 'out', 'diff', 'exp')
 
 $cfg = array()
 
 $exts_tested = count($exts_to_test)
 
 $exts_skipped = 0
 
 $ignored_by_ext = 0
 
 $test_dirs = array()
 
 $optionals = array('tests', 'ext', 'Zend', 'ZendEngine2', 'sapi/cli', 'sapi/cgi')
 
 $start_time = time()
 
 $test_cnt = count($test_files)
 
 $test_idx = 0
 
 $end_time = time()
 
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
comp_line ( $l1,
 $l2,
 $is_reg 
)
+
+ +
+
+ +
+
+ + + + + + + +
compute_summary ()
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
count_array_diff ( $ar1,
 $ar2,
 $is_reg,
 $w,
 $idx1,
 $idx2,
 $cnt1,
 $cnt2,
 $steps 
)
+
+ +
+
+ +
+
+ + + + + + + + +
error ( $message)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
error_report ( $testname,
 $logname,
 $tested 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
foreach ($optionals as $dir) foreach ($exts_to_test as $key=> $val) foreach ($test_dirs as $dir) foreach ($user_tests as $dir) find_files ( $dir,
 $is_ext_dir = false,
 $ignore = false 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
generate_array_diff ( $ar1,
 $ar2,
 $is_reg,
 $w 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
generate_diff ( $wanted,
 $wanted_re,
 $output 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
get_summary ( $show_ext_summary,
 $show_html 
)
+
+ +
+
+ +
+
+ + + + + + + +
junit_enabled ()
+
+ +
+
+ +
+
+ + + + + + + + +
junit_finish_timer ( $file_name)
+
+ +
+
+ +
+
+ + + + + + + + +
junit_get_suite_xml ( $suite_name = '')
+
+ +
+
+ +
+
+ + + + + + + + +
junit_get_suitename_for ( $file_name)
+
+ +
+
+ +
+
+ + + + + + + + +
junit_get_timer ( $file_name)
+
+ +
+
+ +
+
+ + + + + + + +
junit_init ()
+
+ +
+
+ +
+
+ + + + + + + + +
junit_init_suite ( $suite_name)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
junit_mark_test_as ( $type,
 $file_name,
 $test_name,
 $time = null,
 $message = '',
 $details = '' 
)
+
+
Parameters
+ + + + + + + +
array | string$type
string$file_name
string$test_name
int | string$time
string$message
string$details
+
+
+
Returns
void
+ +
+
+ +
+
+ + + + + + + + +
junit_path_to_classname ( $file_name)
+
+ +
+
+ +
+
+ + + + + + + +
junit_save_xml ()
+
+ +
+
+ +
+
+ + + + + + + + +
junit_start_timer ( $file_name)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
junit_suite_record ( $suite,
 $param,
 $value = 1 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
mail_qa_team ( $data,
 $compression,
 $status = false 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
run_all_tests ( $test_files,
 $env,
 $redir_tested = null 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
run_test ( $php,
 $file,
 $env 
)
+
+ +
+
+ +
+
+ + + + + + + +
save_or_mail_results ()
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
save_text ( $filename,
 $text,
 $filename_copy = null 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
settings2array ( $settings,
$ini_settings 
)
+
+ +
+
+ +
+
+ + + + + + + + +
settings2params ($ini_settings)
+
+ +
+
+ +
+
+ + + + + + + + +
show_end ( $end_time)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
show_file_block ( $file,
 $block,
 $section = null 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
show_redirect_ends ( $tests,
 $tested,
 $tested_file 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
show_redirect_start ( $tests,
 $tested,
 $tested_file 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
show_result ( $result,
 $tested,
 $tested_file,
 $extra = '',
 $temp_filenames = null 
)
+
+ +
+
+ +
+
+ + + + + + + + +
show_start ( $start_time)
+
+ +
+
+ +
+
+ + + + + + + +
show_summary ()
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
show_test ( $test_idx,
 $shortname 
)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
system_with_timeout ( $commandline,
 $env = null,
 $stdin = null 
)
+
+ +
+
+ +
+
+ + + + + + + + +
test_name ( $name)
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
test_sort ( $a,
 $b 
)
+
+ +
+
+ +
+
+ + + + + + + +
if (getenv('TEST_PHP_EXECUTABLE')) if (getenv('TEST_PHP_CGI_EXECUTABLE')) verify_config ()
+
+ +
+
+ +
+
+ + + + + + + + +
write_information ( $show_html)
+
+ +
+
+

Variable Documentation

+ +
+
+ + + + +
$cfg = array()
+
+ +
+
+ +
+
+ + + + +
$cfgfiles = array('skip', 'php', 'clean', 'out', 'diff', 'exp')
+
+ +
+
+ +
+
+ + + + +
$cfgtypes = array('show', 'keep')
+
+ +
+
+ +
+
+ + + + +
$compression = 0
+
+ +
+
+ +
+
+ + + + +
$conf_passed = null
+
+ +
+
+ +
+
+ + + + +
if (!extension_loaded('pcre')) if (!function_exists('proc_open')) if (!defined("PHP_VERSION_ID")) if (PHP_VERSION_ID< 50300) if (ini_get('date.timezone')== '') $CUR_DIR = getcwd()
+
+ +
+
+ +
+
+ + + + +
$cwd = getcwd()
+
+ +
+
+ +
+
+ + + + +
$end_time = time()
+
+ +
+
+ +
+
+ + + + +
if (PHP_MAJOR_VERSION< 6) $environment = isset($_ENV) ? $_ENV : array()
+
+ +
+
+ +
+
+ + + + +
$exts_skipped = 0
+
+ +
+
+ +
+
+ + + + +
$exts_tested = count($exts_to_test)
+
+ +
+
+ +
+
+ + + + +
$exts_to_test = array()
+
+ +
+
+ +
+
+ + + + +
$failed_tests_file = false
+
+ +
+
+ +
+
+ + + + +
$html_file = null
+
+ +
+
+ +
+
+ + + + +
$html_output = false
+
+ +
+
+ +
+
+ + + + +
$ignored_by_ext = 0
+
+ +
+
+ +
+
+ + + + +
$ini_overwrites
+
+Initial value:
= array(
+
'output_handler=',
+
'open_basedir=',
+
'safe_mode=0',
+
'disable_functions=',
+
'output_buffering=Off',
+
'error_reporting=' . (E_ALL | E_STRICT),
+
'display_errors=1',
+
'display_startup_errors=1',
+
'log_errors=0',
+
'html_errors=0',
+
'track_errors=1',
+
'report_memleaks=1',
+
'report_zend_debug=0',
+
'docref_root=',
+
'docref_ext=.html',
+
'error_prepend_string=',
+
'error_append_string=',
+
'auto_prepend_file=',
+
'auto_append_file=',
+
'magic_quotes_runtime=0',
+
'ignore_repeated_errors=0',
+
'precision=14',
+
'memory_limit=128M',
+
)
+
+
+
+ +
+
+ + + + +
if ($compression) $just_save_results = false
+
+ +
+
+ +
+
+ + + + +
$leak_check = false
+
+ +
+
+ +
+
+ + + + +
$no_clean = false
+
+ +
+
+ +
+
+ + + + +
$optionals = array('tests', 'ext', 'Zend', 'ZendEngine2', 'sapi/cli', 'sapi/cgi')
+
+ +
+
+ +
+
+ + + + +
$output_file = $CUR_DIR . '/php_test_results_' . date('Ymd_Hi') . '.txt'
+
+ +
+
+ +
+
+ + + + +
$pass_option_n = false
+
+ +
+
+ +
+
+ + + + +
$pass_options = ''
+
+ +
+
+ +
+
+ + + + +
if ((substr(PHP_OS, 0, 3)=="WIN")&&empty($environment["SystemRoot"])) $php = null
+
+ +
+
+ +
+
+ + + + +
$php_cgi = null
+
+ +
+
+ +
+
+ + + + +
$PHP_FAILED_TESTS = array('BORKED' => array(), 'FAILED' => array(), 'WARNED' => array(), 'LEAKED' => array(), 'XFAILED' => array())
+
+ +
+
+ +
+
+ + + + +
$redir_tests = array()
+
+ +
+
+ +
+
+ + + + +
$start_time = time()
+
+ +
+
+ +
+
+ + + + +
$temp_source = null
+
+ +
+
+ +
+
+ + + + +
$temp_target = null
+
+ +
+
+ +
+
+ + + + +
$temp_urlbase = null
+
+ +
+
+ +
+
+ + + + +
$test_cnt = count($test_files)
+
+ +
+
+ +
+
+ + + + +
$test_dirs = array()
+
+ +
+
+ +
+
+ + + + +
$test_files = array()
+
+ +
+
+ +
+
+ + + + +
$test_idx = 0
+
+ +
+
+ +
+
+ + + + +
$test_results = array()
+
+ +
+
+ +
+
+ + + + +
$valgrind_header = ''
+
+ +
+
+ +
+
+ + + + +
$valgrind_version = 0
+
+ +
+
+ +
+
+ + + + +
if (getenv('TEST_PHP_USER')) else
+
+Initial value:
{
+
$log_format = 'LEODS'
+
+
+
+ +
+
+ + + + +
const PHP_QA_EMAIL 'qa-reports@lists.php.net'
+
+ +
+
+ +
+
+ + + + +
const QA_REPORTS_PAGE 'http://qa.php.net/reports'
+
+ +
+
+ +
+
+ + + + +
const QA_SUBMISSION_PAGE 'http://qa.php.net/buildtest-process.php'
+
+ +
+
+
+ + + + diff --git a/search/all_24.html b/search/all_24.html new file mode 100644 index 0000000..fcfd3f2 --- /dev/null +++ b/search/all_24.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_24.js b/search/all_24.js new file mode 100644 index 0000000..7765992 --- /dev/null +++ b/search/all_24.js @@ -0,0 +1,42 @@ +var searchData= +[ + ['_24cfg',['$cfg',['../run-tests_8php.html#aefee7abaa50a3edbaa97b91500ad8d55',1,'run-tests.php']]], + ['_24cfgfiles',['$cfgfiles',['../run-tests_8php.html#a343028842b54f66ac85f28bf655418ad',1,'run-tests.php']]], + ['_24cfgtypes',['$cfgtypes',['../run-tests_8php.html#a10fc9d27ec7c9a08c0fe08591512a207',1,'run-tests.php']]], + ['_24compression',['$compression',['../run-tests_8php.html#a99cfcd818d46c54bb56d6100a25f8442',1,'run-tests.php']]], + ['_24conf_5fpassed',['$conf_passed',['../run-tests_8php.html#aa0465202b05d9f8fb799a1129f1d5aff',1,'run-tests.php']]], + ['_24cur_5fdir',['$CUR_DIR',['../run-tests_8php.html#a8839bea203a9530f31afe5b4fd695619',1,'run-tests.php']]], + ['_24cwd',['$cwd',['../run-tests_8php.html#aee97a10fa60656a1f67653eef1d443aa',1,'run-tests.php']]], + ['_24end_5ftime',['$end_time',['../run-tests_8php.html#a53df77622d4c20adefa70db294377d7b',1,'run-tests.php']]], + ['_24environment',['$environment',['../run-tests_8php.html#a73233e5c69490bd0289b2a86e74d50d2',1,'run-tests.php']]], + ['_24exts_5fskipped',['$exts_skipped',['../run-tests_8php.html#a701f5147cac0d8b152016a46b8b19bf9',1,'run-tests.php']]], + ['_24exts_5ftested',['$exts_tested',['../run-tests_8php.html#a395fc0133b1ff583c66af4ab73ac31ef',1,'run-tests.php']]], + ['_24exts_5fto_5ftest',['$exts_to_test',['../run-tests_8php.html#ac9ba1f847884a4a99ee8dfa747009685',1,'run-tests.php']]], + ['_24failed_5ftests_5ffile',['$failed_tests_file',['../run-tests_8php.html#aea4ca32e2a82ee524d8d055ffdb6c212',1,'run-tests.php']]], + ['_24html_5ffile',['$html_file',['../run-tests_8php.html#accbb3cf0223b6bb42a6dc6b3533ecc01',1,'run-tests.php']]], + ['_24html_5foutput',['$html_output',['../run-tests_8php.html#a3a0e46c869558acfaafedc4fdb66ebe0',1,'run-tests.php']]], + ['_24ignored_5fby_5fext',['$ignored_by_ext',['../run-tests_8php.html#a816f67c361ea16a405572e5c3b7f656a',1,'run-tests.php']]], + ['_24ini_5foverwrites',['$ini_overwrites',['../run-tests_8php.html#ae2c4e151f261725bf204ff5e527277c7',1,'run-tests.php']]], + ['_24just_5fsave_5fresults',['$just_save_results',['../run-tests_8php.html#aba2101e480c1af1791275d24ae7d4981',1,'run-tests.php']]], + ['_24leak_5fcheck',['$leak_check',['../run-tests_8php.html#acc609ed1c03e2f93145d854c47bdd38f',1,'run-tests.php']]], + ['_24no_5fclean',['$no_clean',['../run-tests_8php.html#a159ab57397f912dbbc67940f78b59173',1,'run-tests.php']]], + ['_24optionals',['$optionals',['../run-tests_8php.html#a8c672b232318810be59b54d4992e7ce8',1,'run-tests.php']]], + ['_24output_5ffile',['$output_file',['../run-tests_8php.html#aecf92028114447a7ae1d75893e0e935f',1,'run-tests.php']]], + ['_24pass_5foption_5fn',['$pass_option_n',['../run-tests_8php.html#a97b38aad14813732399a280b6946f0e5',1,'run-tests.php']]], + ['_24pass_5foptions',['$pass_options',['../run-tests_8php.html#ae0d6dd6e44915008ac97fea4cbaea6f1',1,'run-tests.php']]], + ['_24php',['$php',['../run-tests_8php.html#af2089c7d10d29d521f5fe550a880694e',1,'run-tests.php']]], + ['_24php_5fcgi',['$php_cgi',['../run-tests_8php.html#a394e82ca1b1faad10bf02d9e963aa828',1,'run-tests.php']]], + ['_24php_5ffailed_5ftests',['$PHP_FAILED_TESTS',['../run-tests_8php.html#a469a2c11e23d1ad0b30f54188186b79e',1,'run-tests.php']]], + ['_24redir_5ftests',['$redir_tests',['../run-tests_8php.html#a5aa614ce11c4a2d4360272186f86ae59',1,'run-tests.php']]], + ['_24start_5ftime',['$start_time',['../run-tests_8php.html#a73a034a7a0fbdd2c93f23fb6c9946ee9',1,'run-tests.php']]], + ['_24temp_5fsource',['$temp_source',['../run-tests_8php.html#ad620c540e4f371601350d53dd270389c',1,'run-tests.php']]], + ['_24temp_5ftarget',['$temp_target',['../run-tests_8php.html#af33d2e697a4c03dd370d05bd9d97e8ae',1,'run-tests.php']]], + ['_24temp_5furlbase',['$temp_urlbase',['../run-tests_8php.html#afe629252d7bda4fd7c9709071c45989c',1,'run-tests.php']]], + ['_24test_5fcnt',['$test_cnt',['../run-tests_8php.html#a87b001832b29e3bfdc9c61540267275f',1,'run-tests.php']]], + ['_24test_5fdirs',['$test_dirs',['../run-tests_8php.html#a39ce6b56704c32204d3faecfe1228fa8',1,'run-tests.php']]], + ['_24test_5ffiles',['$test_files',['../run-tests_8php.html#af3f97fc0ee40af3e270be829ea69aeec',1,'run-tests.php']]], + ['_24test_5fidx',['$test_idx',['../run-tests_8php.html#aea83472091448a1fb38057c46c595b64',1,'run-tests.php']]], + ['_24test_5fresults',['$test_results',['../run-tests_8php.html#a7f4ebc4532c60daebb981d3841116be4',1,'run-tests.php']]], + ['_24valgrind_5fheader',['$valgrind_header',['../run-tests_8php.html#aa1908ecaf2d431a053215d99bfe665f5',1,'run-tests.php']]], + ['_24valgrind_5fversion',['$valgrind_version',['../run-tests_8php.html#a49002e2e4ad6aa6d504b676eb2f188ee',1,'run-tests.php']]] +]; diff --git a/search/all_63.html b/search/all_63.html new file mode 100644 index 0000000..a8fe36d --- /dev/null +++ b/search/all_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_63.js b/search/all_63.js new file mode 100644 index 0000000..481f19f --- /dev/null +++ b/search/all_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['copy',['copy',['../php__raphf_8h.html#a8094f85df976aff73148bc579ae72e38',1,'php_resource_factory_ops']]], + ['ctor',['ctor',['../php__raphf_8h.html#a044b07071758dbc53f87bfd212400ac0',1,'php_resource_factory_ops']]] +]; diff --git a/search/all_64.html b/search/all_64.html new file mode 100644 index 0000000..b415c0e --- /dev/null +++ b/search/all_64.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_64.js b/search/all_64.js new file mode 100644 index 0000000..8bcb860 --- /dev/null +++ b/search/all_64.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['data',['data',['../structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12',1,'php_resource_factory']]], + ['dtor',['dtor',['../php__raphf_8h.html#acb8a7a04b86f08db41a2d6232676c65c',1,'php_resource_factory_ops::dtor()'],['../structphp__resource__factory.html#a7b48ed1c081288e7dd396bdb2f9187f9',1,'php_resource_factory::dtor()']]] +]; diff --git a/search/all_65.html b/search/all_65.html new file mode 100644 index 0000000..49e2cae --- /dev/null +++ b/search/all_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_65.js b/search/all_65.js new file mode 100644 index 0000000..f4d8c31 --- /dev/null +++ b/search/all_65.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['else',['else',['../run-tests_8php.html#af73f2f0b6d63ba73c90d639891a925fb',1,'run-tests.php']]], + ['error',['error',['../run-tests_8php.html#aaa193b0c1c2b93841472b26e2e281751',1,'run-tests.php']]], + ['error_5freport',['error_report',['../run-tests_8php.html#ac0fb96ff5678eb44d91d3a3ff11b19de',1,'run-tests.php']]] +]; diff --git a/search/all_66.html b/search/all_66.html new file mode 100644 index 0000000..6aa068f --- /dev/null +++ b/search/all_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_66.js b/search/all_66.js new file mode 100644 index 0000000..e360d2e --- /dev/null +++ b/search/all_66.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['fops',['fops',['../structphp__resource__factory.html#af46453098d0078f9015184549b363824',1,'php_resource_factory']]], + ['free',['free',['../php__raphf_8h.html#a653a4a0e9c39ad942e9573e197f62974',1,'php_persistent_handle_list']]], + ['free_5fon_5fabandon',['free_on_abandon',['../php__raphf_8h.html#a84ffa94401b9869e14c190be4bb1b6be',1,'php_persistent_handle_factory']]] +]; diff --git a/search/all_67.html b/search/all_67.html new file mode 100644 index 0000000..a6568a3 --- /dev/null +++ b/search/all_67.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_67.js b/search/all_67.js new file mode 100644 index 0000000..1225ffb --- /dev/null +++ b/search/all_67.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['generate_5farray_5fdiff',['generate_array_diff',['../run-tests_8php.html#a48f5744b55e03515391eaf007c0639f3',1,'run-tests.php']]], + ['generate_5fdiff',['generate_diff',['../run-tests_8php.html#a8d38f6036220814f4b1c17cfb6c2d3c3',1,'run-tests.php']]], + ['get_5fsummary',['get_summary',['../run-tests_8php.html#ab8648912cc84276ad86eadb73e9cd3cd',1,'run-tests.php']]] +]; diff --git a/search/all_68.html b/search/all_68.html new file mode 100644 index 0000000..a954e65 --- /dev/null +++ b/search/all_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_68.js b/search/all_68.js new file mode 100644 index 0000000..2f4ddea --- /dev/null +++ b/search/all_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hash',['hash',['../structphp__persistent__handle__globals.html#abb7eb603d6855b2f9bb8987349c42e35',1,'php_persistent_handle_globals']]] +]; diff --git a/search/all_69.html b/search/all_69.html new file mode 100644 index 0000000..676651e --- /dev/null +++ b/search/all_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_69.js b/search/all_69.js new file mode 100644 index 0000000..1235b56 --- /dev/null +++ b/search/all_69.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['ident',['ident',['../php__raphf_8h.html#ae874c03caffa8eaa265dd52ebf593c02',1,'php_persistent_handle_factory']]] +]; diff --git a/search/all_6a.html b/search/all_6a.html new file mode 100644 index 0000000..12ef2ec --- /dev/null +++ b/search/all_6a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_6a.js b/search/all_6a.js new file mode 100644 index 0000000..4206d67 --- /dev/null +++ b/search/all_6a.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['junit_5fenabled',['junit_enabled',['../run-tests_8php.html#abcedc1f41a149266aac3b51059c776f7',1,'run-tests.php']]], + ['junit_5ffinish_5ftimer',['junit_finish_timer',['../run-tests_8php.html#ab938125e27da0c53565b01767d84c8bd',1,'run-tests.php']]], + ['junit_5fget_5fsuite_5fxml',['junit_get_suite_xml',['../run-tests_8php.html#a30e7982ca6dc215173b64d69f279dab5',1,'run-tests.php']]], + ['junit_5fget_5fsuitename_5ffor',['junit_get_suitename_for',['../run-tests_8php.html#acccbbc48cfa52f785defe87180746c93',1,'run-tests.php']]], + ['junit_5fget_5ftimer',['junit_get_timer',['../run-tests_8php.html#ab7dffed6eeb2d0c5072d1f9babea4994',1,'run-tests.php']]], + ['junit_5finit',['junit_init',['../run-tests_8php.html#af730d163a8d99856977b8e210dcb84c8',1,'run-tests.php']]], + ['junit_5finit_5fsuite',['junit_init_suite',['../run-tests_8php.html#a9d2df0005abf25135cc7fb218de1f3b6',1,'run-tests.php']]], + ['junit_5fmark_5ftest_5fas',['junit_mark_test_as',['../run-tests_8php.html#a306fad3e93d6d35dbe2170be078c8d56',1,'run-tests.php']]], + ['junit_5fpath_5fto_5fclassname',['junit_path_to_classname',['../run-tests_8php.html#ae248600dd5b22b605a1c17af8e4f019f',1,'run-tests.php']]], + ['junit_5fsave_5fxml',['junit_save_xml',['../run-tests_8php.html#a1823064876b13aa0d2ef22be78aee8ac',1,'run-tests.php']]], + ['junit_5fstart_5ftimer',['junit_start_timer',['../run-tests_8php.html#a5f886fe3edd47741d553f9b4bea8d9ac',1,'run-tests.php']]], + ['junit_5fsuite_5frecord',['junit_suite_record',['../run-tests_8php.html#a35cee286dd53ffbc7a3cdaa259a893dc',1,'run-tests.php']]] +]; diff --git a/search/all_6c.html b/search/all_6c.html new file mode 100644 index 0000000..3623130 --- /dev/null +++ b/search/all_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_6c.js b/search/all_6c.js new file mode 100644 index 0000000..7d00fdb --- /dev/null +++ b/search/all_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['list',['list',['../php__raphf_8h.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0',1,'php_persistent_handle_provider']]] +]; diff --git a/search/all_6d.html b/search/all_6d.html new file mode 100644 index 0000000..82ceec7 --- /dev/null +++ b/search/all_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_6d.js b/search/all_6d.js new file mode 100644 index 0000000..99b8079 --- /dev/null +++ b/search/all_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mail_5fqa_5fteam',['mail_qa_team',['../run-tests_8php.html#a1630b00b9e85c7559ff6881e0fc0e0ec',1,'run-tests.php']]] +]; diff --git a/search/all_70.html b/search/all_70.html new file mode 100644 index 0000000..a279cb2 --- /dev/null +++ b/search/all_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_70.js b/search/all_70.js new file mode 100644 index 0000000..d908d29 --- /dev/null +++ b/search/all_70.js @@ -0,0 +1,37 @@ +var searchData= +[ + ['php_5fpersistent_5fhandle_5fabandon',['php_persistent_handle_abandon',['../php__raphf_8h.html#ab12ec2da7189e16fbed40a3b73bc9ee2',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5faccrete',['php_persistent_handle_accrete',['../php__raphf_8h.html#ae8124f3f73e96e2193ae03c5519d2763',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5facquire',['php_persistent_handle_acquire',['../php__raphf_8h.html#af6636e870497be0699d2781e5fc8a2a9',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fcleanup',['php_persistent_handle_cleanup',['../php__raphf_8h.html#a0d661d1f880270146012eb8781e5343e',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fconcede',['php_persistent_handle_concede',['../php__raphf_8h.html#a0a266874dafb69cf2b040378d4033901',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5ffactory',['php_persistent_handle_factory',['../php__raphf_8h.html#structphp__persistent__handle__factory',1,'']]], + ['php_5fpersistent_5fhandle_5ffactory_2eident',['php_persistent_handle_factory.ident',['../php__raphf_8h.html#structphp__persistent__handle__factory_8ident',1,'']]], + ['php_5fpersistent_5fhandle_5ffactory_5ft',['php_persistent_handle_factory_t',['../php__raphf_8h.html#a833eaa62ffcc217e5749c26c18885b17',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fget_5fresource_5ffactory_5fops',['php_persistent_handle_get_resource_factory_ops',['../php__raphf_8h.html#a93458ab12d810f0fd545fb1464ba9eca',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5flist',['php_persistent_handle_list',['../php__raphf_8h.html#structphp__persistent__handle__list',1,'']]], + ['php_5fpersistent_5fhandle_5flist_5ft',['php_persistent_handle_list_t',['../php__raphf_8h.html#a07f599598d2b87b188f39871d026c177',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fprovide',['php_persistent_handle_provide',['../php__raphf_8h.html#a3cbbe29c8a4ed9858c921c8ee539de59',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fprovider',['php_persistent_handle_provider',['../php__raphf_8h.html#structphp__persistent__handle__provider',1,'']]], + ['php_5fpersistent_5fhandle_5fprovider_5ft',['php_persistent_handle_provider_t',['../php__raphf_8h.html#a31f0595f4f726f762790cef844568fc4',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5frelease',['php_persistent_handle_release',['../php__raphf_8h.html#af08ee05c51d52200755d24f6f52df144',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fretire_5ft',['php_persistent_handle_retire_t',['../php__raphf_8h.html#a8f7d6389c67478ca0b99729a5dd3d305',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fstatall',['php_persistent_handle_statall',['../php__raphf_8h.html#ae174fbe124d4cb6010e218a68379bd18',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fwakeup_5ft',['php_persistent_handle_wakeup_t',['../php__raphf_8h.html#a681ca1f7c1249199b45270be60c721c6',1,'php_raphf.h']]], + ['php_5fraphf_2eh',['php_raphf.h',['../php__raphf_8h.html',1,'']]], + ['php_5fresource_5ffactory',['php_resource_factory',['../structphp__resource__factory.html',1,'']]], + ['php_5fresource_5ffactory_5faddref',['php_resource_factory_addref',['../php__raphf_8h.html#ae8be369197905047ffbd05c0ca80f245',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fdtor',['php_resource_factory_dtor',['../php__raphf_8h.html#a016b8a4159e698f915ab967711696847',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5ffree',['php_resource_factory_free',['../php__raphf_8h.html#a7f012d685f5f7c08f50288b61232e689',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fcopy',['php_resource_factory_handle_copy',['../php__raphf_8h.html#a08db5f3698f2d0bf3d2f20dcf4e7b2b4',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fcopy_5ft',['php_resource_factory_handle_copy_t',['../php__raphf_8h.html#a80169af0f2adacf3ec7c7ee1dfb19f96',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fctor',['php_resource_factory_handle_ctor',['../php__raphf_8h.html#a98d02dc80dd83095b8f901954350840c',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fctor_5ft',['php_resource_factory_handle_ctor_t',['../php__raphf_8h.html#a1c5d952a60130d2a68c8d68db2bebbd8',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fdtor',['php_resource_factory_handle_dtor',['../php__raphf_8h.html#a97dbb9d342f33205b92374c586676bc6',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fdtor_5ft',['php_resource_factory_handle_dtor_t',['../php__raphf_8h.html#a472a7e1909aed64d00d43ea5c112b854',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5finit',['php_resource_factory_init',['../php__raphf_8h.html#ad20f10c53e3f33756638da98819367f0',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fops',['php_resource_factory_ops',['../php__raphf_8h.html#structphp__resource__factory__ops',1,'']]], + ['php_5fresource_5ffactory_5fops_5ft',['php_resource_factory_ops_t',['../php__raphf_8h.html#a29e0d7a66e441a5265ddf2f0adbbb3af',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5ft',['php_resource_factory_t',['../php__raphf_8h.html#a4817c4b3d4077c48dff36376487ba8d4',1,'php_raphf.h']]], + ['provider',['provider',['../php__raphf_8h.html#a43aabcbe7ec4b5ff463f74cfcf788f51',1,'php_persistent_handle_factory']]] +]; diff --git a/search/all_71.html b/search/all_71.html new file mode 100644 index 0000000..ee4ba24 --- /dev/null +++ b/search/all_71.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_71.js b/search/all_71.js new file mode 100644 index 0000000..2b7c4bb --- /dev/null +++ b/search/all_71.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['qa_5freports_5fpage',['QA_REPORTS_PAGE',['../run-tests_8php.html#a249ef5a2911b699aecb5965b0a2e169e',1,'run-tests.php']]], + ['qa_5fsubmission_5fpage',['QA_SUBMISSION_PAGE',['../run-tests_8php.html#a204a269a4629b5632bec86c7102d4593',1,'run-tests.php']]] +]; diff --git a/search/all_72.html b/search/all_72.html new file mode 100644 index 0000000..315ac4f --- /dev/null +++ b/search/all_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_72.js b/search/all_72.js new file mode 100644 index 0000000..1a001c4 --- /dev/null +++ b/search/all_72.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['refcount',['refcount',['../structphp__resource__factory.html#a00ebf2bd2227f5d4826751b3b475769f',1,'php_resource_factory']]], + ['retire',['retire',['../php__raphf_8h.html#a9299f3f0821061ad93d15c10cf735b6b',1,'php_persistent_handle_factory']]], + ['rf',['rf',['../php__raphf_8h.html#a8204714f100b74b028652951ca40abd3',1,'php_persistent_handle_provider']]] +]; diff --git a/search/all_73.html b/search/all_73.html new file mode 100644 index 0000000..09f8ce8 --- /dev/null +++ b/search/all_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_73.js b/search/all_73.js new file mode 100644 index 0000000..17637af --- /dev/null +++ b/search/all_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['str',['str',['../structphp__persistent__handle__factory.html#a71be5a461851c6d3b93fa88126a2feae',1,'php_persistent_handle_factory']]] +]; diff --git a/search/all_74.html b/search/all_74.html new file mode 100644 index 0000000..c2cd095 --- /dev/null +++ b/search/all_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_74.js b/search/all_74.js new file mode 100644 index 0000000..bbea40d --- /dev/null +++ b/search/all_74.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['test_5fname',['test_name',['../run-tests_8php.html#ad964bb063d72c67afb3c46dc22f2b5ea',1,'run-tests.php']]], + ['test_5fsort',['test_sort',['../run-tests_8php.html#a32eba0e5c52e2d82b1c0ffd0a863ec63',1,'run-tests.php']]] +]; diff --git a/search/all_75.html b/search/all_75.html new file mode 100644 index 0000000..49c1e78 --- /dev/null +++ b/search/all_75.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_75.js b/search/all_75.js new file mode 100644 index 0000000..48aea30 --- /dev/null +++ b/search/all_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['used',['used',['../php__raphf_8h.html#a119a44fd9f5ae066b6d77e7a35a25cd0',1,'php_persistent_handle_list']]] +]; diff --git a/search/all_76.html b/search/all_76.html new file mode 100644 index 0000000..5643d68 --- /dev/null +++ b/search/all_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_76.js b/search/all_76.js new file mode 100644 index 0000000..501f2a1 --- /dev/null +++ b/search/all_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['verify_5fconfig',['verify_config',['../run-tests_8php.html#aa5c21ee7711c7ad2d10f98f065470f5d',1,'run-tests.php']]] +]; diff --git a/search/all_77.html b/search/all_77.html new file mode 100644 index 0000000..d01abb9 --- /dev/null +++ b/search/all_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_77.js b/search/all_77.js new file mode 100644 index 0000000..575665a --- /dev/null +++ b/search/all_77.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['wakeup',['wakeup',['../php__raphf_8h.html#a6633b7c860e4538942e0367d64ed5af7',1,'php_persistent_handle_factory']]] +]; diff --git a/search/all_7a.html b/search/all_7a.html new file mode 100644 index 0000000..d8a394b --- /dev/null +++ b/search/all_7a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_7a.js b/search/all_7a.js new file mode 100644 index 0000000..f258496 --- /dev/null +++ b/search/all_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['zend_5fend_5farg_5finfo',['ZEND_END_ARG_INFO',['../php__raphf_8c.html#a9337bda6793399d5917999063e1aa636',1,'php_raphf.c']]] +]; diff --git a/search/classes_70.html b/search/classes_70.html new file mode 100644 index 0000000..be46ae3 --- /dev/null +++ b/search/classes_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_70.js b/search/classes_70.js new file mode 100644 index 0000000..129889c --- /dev/null +++ b/search/classes_70.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['php_5fpersistent_5fhandle_5ffactory',['php_persistent_handle_factory',['../php__raphf_8h.html#structphp__persistent__handle__factory',1,'']]], + ['php_5fpersistent_5fhandle_5ffactory_2eident',['php_persistent_handle_factory.ident',['../php__raphf_8h.html#structphp__persistent__handle__factory_8ident',1,'']]], + ['php_5fpersistent_5fhandle_5flist',['php_persistent_handle_list',['../php__raphf_8h.html#structphp__persistent__handle__list',1,'']]], + ['php_5fpersistent_5fhandle_5fprovider',['php_persistent_handle_provider',['../php__raphf_8h.html#structphp__persistent__handle__provider',1,'']]], + ['php_5fresource_5ffactory',['php_resource_factory',['../structphp__resource__factory.html',1,'']]], + ['php_5fresource_5ffactory_5fops',['php_resource_factory_ops',['../php__raphf_8h.html#structphp__resource__factory__ops',1,'']]] +]; diff --git a/search/close.png b/search/close.png new file mode 100644 index 0000000000000000000000000000000000000000..9342d3dfeea7b7c4ee610987e717804b5a42ceb9 GIT binary patch literal 273 zcmV+s0q*{ZP)4(RlMby96)VwnbG{ zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b) zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC X2MT$R4iQDd00000NkvXXu0mjfia~GN literal 0 HcmV?d00001 diff --git a/search/defines_63.html b/search/defines_63.html new file mode 100644 index 0000000..cdc781e --- /dev/null +++ b/search/defines_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/defines_63.js b/search/defines_63.js new file mode 100644 index 0000000..aaee602 --- /dev/null +++ b/search/defines_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['compile_5fdl_5fraphf',['COMPILE_DL_RAPHF',['../config_8h.html#a4f0345432c087f1cf8e3a20741e97204',1,'config.h']]] +]; diff --git a/search/defines_68.html b/search/defines_68.html new file mode 100644 index 0000000..28e3b0d --- /dev/null +++ b/search/defines_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/defines_68.js b/search/defines_68.js new file mode 100644 index 0000000..1c28e60 --- /dev/null +++ b/search/defines_68.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['have_5fdlfcn_5fh',['HAVE_DLFCN_H',['../config_8h.html#a0ee1617ff2f6885ef384a3dd46f9b9d7',1,'config.h']]], + ['have_5finttypes_5fh',['HAVE_INTTYPES_H',['../config_8h.html#ab90a030ff2790ebdc176660a6dd2a478',1,'config.h']]], + ['have_5fmemory_5fh',['HAVE_MEMORY_H',['../config_8h.html#ae93a78f9d076138897af441c9f86f285',1,'config.h']]], + ['have_5fstdint_5fh',['HAVE_STDINT_H',['../config_8h.html#ab6cd6d1c63c1e26ea2d4537b77148354',1,'config.h']]], + ['have_5fstdlib_5fh',['HAVE_STDLIB_H',['../config_8h.html#a9e0e434ec1a6ddbd97db12b5a32905e0',1,'config.h']]], + ['have_5fstring_5fh',['HAVE_STRING_H',['../config_8h.html#ad4c234dd1625255dc626a15886306e7d',1,'config.h']]], + ['have_5fstrings_5fh',['HAVE_STRINGS_H',['../config_8h.html#a405d10d46190bcb0320524c54eafc850',1,'config.h']]], + ['have_5fsys_5fstat_5fh',['HAVE_SYS_STAT_H',['../config_8h.html#ace156430ba007d19b4348a950d0c692b',1,'config.h']]], + ['have_5fsys_5ftypes_5fh',['HAVE_SYS_TYPES_H',['../config_8h.html#a69dc70bea5d1f8bd2be9740e974fa666',1,'config.h']]], + ['have_5funistd_5fh',['HAVE_UNISTD_H',['../config_8h.html#a219b06937831d0da94d801ab13987639',1,'config.h']]] +]; diff --git a/search/defines_70.html b/search/defines_70.html new file mode 100644 index 0000000..0639111 --- /dev/null +++ b/search/defines_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/defines_70.js b/search/defines_70.js new file mode 100644 index 0000000..439b003 --- /dev/null +++ b/search/defines_70.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['php_5fraphf_5fdebug_5fphandles',['PHP_RAPHF_DEBUG_PHANDLES',['../php__raphf_8c.html#a4ac4e8587a25a7617a3bb1b2b246fe7f',1,'php_raphf.c']]], + ['php_5fraphf_5fg',['PHP_RAPHF_G',['../php__raphf_8c.html#a5a6099bca8801bd4a502806ab49c1d1c',1,'php_raphf.c']]] +]; diff --git a/search/defines_73.html b/search/defines_73.html new file mode 100644 index 0000000..b6bf553 --- /dev/null +++ b/search/defines_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/defines_73.js b/search/defines_73.js new file mode 100644 index 0000000..9c8e905 --- /dev/null +++ b/search/defines_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['stdc_5fheaders',['STDC_HEADERS',['../config_8h.html#a550e5c272cc3cf3814651721167dcd23',1,'config.h']]] +]; diff --git a/search/files_63.html b/search/files_63.html new file mode 100644 index 0000000..8a89bf6 --- /dev/null +++ b/search/files_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_63.js b/search/files_63.js new file mode 100644 index 0000000..341df00 --- /dev/null +++ b/search/files_63.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['config_2eh',['config.h',['../config_8h.html',1,'']]] +]; diff --git a/search/files_70.html b/search/files_70.html new file mode 100644 index 0000000..dc4ef19 --- /dev/null +++ b/search/files_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_70.js b/search/files_70.js new file mode 100644 index 0000000..e0b73eb --- /dev/null +++ b/search/files_70.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['php_5fraphf_2eh',['php_raphf.h',['../php__raphf_8h.html',1,'']]] +]; diff --git a/search/files_72.html b/search/files_72.html new file mode 100644 index 0000000..cebd7ce --- /dev/null +++ b/search/files_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_72.js b/search/files_72.js new file mode 100644 index 0000000..00f19fc --- /dev/null +++ b/search/files_72.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['run_2dtests_2ephp',['run-tests.php',['../run-tests_8php.html',1,'']]] +]; diff --git a/search/functions_63.html b/search/functions_63.html new file mode 100644 index 0000000..98924d8 --- /dev/null +++ b/search/functions_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_63.js b/search/functions_63.js new file mode 100644 index 0000000..0001c89 --- /dev/null +++ b/search/functions_63.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['comp_5fline',['comp_line',['../run-tests_8php.html#a3c3457918193189c025201a5382ed8af',1,'run-tests.php']]], + ['compute_5fsummary',['compute_summary',['../run-tests_8php.html#af76470af319f580d2c2f1069c80f4667',1,'run-tests.php']]], + ['count_5farray_5fdiff',['count_array_diff',['../run-tests_8php.html#a77a5a1dd99aadd52a6fa0ee9a57bf774',1,'run-tests.php']]] +]; diff --git a/search/functions_65.html b/search/functions_65.html new file mode 100644 index 0000000..f81fa7b --- /dev/null +++ b/search/functions_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_65.js b/search/functions_65.js new file mode 100644 index 0000000..3df8714 --- /dev/null +++ b/search/functions_65.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['error',['error',['../run-tests_8php.html#aaa193b0c1c2b93841472b26e2e281751',1,'run-tests.php']]], + ['error_5freport',['error_report',['../run-tests_8php.html#ac0fb96ff5678eb44d91d3a3ff11b19de',1,'run-tests.php']]] +]; diff --git a/search/functions_66.html b/search/functions_66.html new file mode 100644 index 0000000..d0c32b6 --- /dev/null +++ b/search/functions_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_66.js b/search/functions_66.js new file mode 100644 index 0000000..89560a2 --- /dev/null +++ b/search/functions_66.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['find_5ffiles',['find_files',['../run-tests_8php.html#a1d5e1b0bf58b389b9e1da988eba49c26',1,'run-tests.php']]] +]; diff --git a/search/functions_67.html b/search/functions_67.html new file mode 100644 index 0000000..39cc96d --- /dev/null +++ b/search/functions_67.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_67.js b/search/functions_67.js new file mode 100644 index 0000000..1225ffb --- /dev/null +++ b/search/functions_67.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['generate_5farray_5fdiff',['generate_array_diff',['../run-tests_8php.html#a48f5744b55e03515391eaf007c0639f3',1,'run-tests.php']]], + ['generate_5fdiff',['generate_diff',['../run-tests_8php.html#a8d38f6036220814f4b1c17cfb6c2d3c3',1,'run-tests.php']]], + ['get_5fsummary',['get_summary',['../run-tests_8php.html#ab8648912cc84276ad86eadb73e9cd3cd',1,'run-tests.php']]] +]; diff --git a/search/functions_6a.html b/search/functions_6a.html new file mode 100644 index 0000000..92ad3a8 --- /dev/null +++ b/search/functions_6a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_6a.js b/search/functions_6a.js new file mode 100644 index 0000000..4206d67 --- /dev/null +++ b/search/functions_6a.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['junit_5fenabled',['junit_enabled',['../run-tests_8php.html#abcedc1f41a149266aac3b51059c776f7',1,'run-tests.php']]], + ['junit_5ffinish_5ftimer',['junit_finish_timer',['../run-tests_8php.html#ab938125e27da0c53565b01767d84c8bd',1,'run-tests.php']]], + ['junit_5fget_5fsuite_5fxml',['junit_get_suite_xml',['../run-tests_8php.html#a30e7982ca6dc215173b64d69f279dab5',1,'run-tests.php']]], + ['junit_5fget_5fsuitename_5ffor',['junit_get_suitename_for',['../run-tests_8php.html#acccbbc48cfa52f785defe87180746c93',1,'run-tests.php']]], + ['junit_5fget_5ftimer',['junit_get_timer',['../run-tests_8php.html#ab7dffed6eeb2d0c5072d1f9babea4994',1,'run-tests.php']]], + ['junit_5finit',['junit_init',['../run-tests_8php.html#af730d163a8d99856977b8e210dcb84c8',1,'run-tests.php']]], + ['junit_5finit_5fsuite',['junit_init_suite',['../run-tests_8php.html#a9d2df0005abf25135cc7fb218de1f3b6',1,'run-tests.php']]], + ['junit_5fmark_5ftest_5fas',['junit_mark_test_as',['../run-tests_8php.html#a306fad3e93d6d35dbe2170be078c8d56',1,'run-tests.php']]], + ['junit_5fpath_5fto_5fclassname',['junit_path_to_classname',['../run-tests_8php.html#ae248600dd5b22b605a1c17af8e4f019f',1,'run-tests.php']]], + ['junit_5fsave_5fxml',['junit_save_xml',['../run-tests_8php.html#a1823064876b13aa0d2ef22be78aee8ac',1,'run-tests.php']]], + ['junit_5fstart_5ftimer',['junit_start_timer',['../run-tests_8php.html#a5f886fe3edd47741d553f9b4bea8d9ac',1,'run-tests.php']]], + ['junit_5fsuite_5frecord',['junit_suite_record',['../run-tests_8php.html#a35cee286dd53ffbc7a3cdaa259a893dc',1,'run-tests.php']]] +]; diff --git a/search/functions_6d.html b/search/functions_6d.html new file mode 100644 index 0000000..f721e11 --- /dev/null +++ b/search/functions_6d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_6d.js b/search/functions_6d.js new file mode 100644 index 0000000..99b8079 --- /dev/null +++ b/search/functions_6d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mail_5fqa_5fteam',['mail_qa_team',['../run-tests_8php.html#a1630b00b9e85c7559ff6881e0fc0e0ec',1,'run-tests.php']]] +]; diff --git a/search/functions_70.html b/search/functions_70.html new file mode 100644 index 0000000..c7cadcf --- /dev/null +++ b/search/functions_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_70.js b/search/functions_70.js new file mode 100644 index 0000000..75d6d4f --- /dev/null +++ b/search/functions_70.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['php_5fpersistent_5fhandle_5fabandon',['php_persistent_handle_abandon',['../php__raphf_8h.html#ab12ec2da7189e16fbed40a3b73bc9ee2',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5faccrete',['php_persistent_handle_accrete',['../php__raphf_8h.html#ae8124f3f73e96e2193ae03c5519d2763',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5facquire',['php_persistent_handle_acquire',['../php__raphf_8h.html#af6636e870497be0699d2781e5fc8a2a9',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fcleanup',['php_persistent_handle_cleanup',['../php__raphf_8h.html#a0d661d1f880270146012eb8781e5343e',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fconcede',['php_persistent_handle_concede',['../php__raphf_8h.html#a0a266874dafb69cf2b040378d4033901',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fget_5fresource_5ffactory_5fops',['php_persistent_handle_get_resource_factory_ops',['../php__raphf_8h.html#a93458ab12d810f0fd545fb1464ba9eca',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fprovide',['php_persistent_handle_provide',['../php__raphf_8h.html#a3cbbe29c8a4ed9858c921c8ee539de59',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5frelease',['php_persistent_handle_release',['../php__raphf_8h.html#af08ee05c51d52200755d24f6f52df144',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fstatall',['php_persistent_handle_statall',['../php__raphf_8h.html#ae174fbe124d4cb6010e218a68379bd18',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5faddref',['php_resource_factory_addref',['../php__raphf_8h.html#ae8be369197905047ffbd05c0ca80f245',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fdtor',['php_resource_factory_dtor',['../php__raphf_8h.html#a016b8a4159e698f915ab967711696847',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5ffree',['php_resource_factory_free',['../php__raphf_8h.html#a7f012d685f5f7c08f50288b61232e689',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fcopy',['php_resource_factory_handle_copy',['../php__raphf_8h.html#a08db5f3698f2d0bf3d2f20dcf4e7b2b4',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fctor',['php_resource_factory_handle_ctor',['../php__raphf_8h.html#a98d02dc80dd83095b8f901954350840c',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fdtor',['php_resource_factory_handle_dtor',['../php__raphf_8h.html#a97dbb9d342f33205b92374c586676bc6',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5finit',['php_resource_factory_init',['../php__raphf_8h.html#ad20f10c53e3f33756638da98819367f0',1,'php_raphf.h']]] +]; diff --git a/search/functions_72.html b/search/functions_72.html new file mode 100644 index 0000000..de10844 --- /dev/null +++ b/search/functions_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_72.js b/search/functions_72.js new file mode 100644 index 0000000..553676f --- /dev/null +++ b/search/functions_72.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['run_5fall_5ftests',['run_all_tests',['../run-tests_8php.html#ab3c8f9b568458cc990e05e18bef1a633',1,'run-tests.php']]], + ['run_5ftest',['run_test',['../run-tests_8php.html#ac5bf100005a4e477eb610a98bf941573',1,'run-tests.php']]] +]; diff --git a/search/functions_73.html b/search/functions_73.html new file mode 100644 index 0000000..a895245 --- /dev/null +++ b/search/functions_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_73.js b/search/functions_73.js new file mode 100644 index 0000000..6611675 --- /dev/null +++ b/search/functions_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['std_5fphp_5fini_5fentry',['STD_PHP_INI_ENTRY',['../php__raphf_8c.html#ad2aba389e88a1e9e11b7dae021bfddfc',1,'php_raphf.c']]] +]; diff --git a/search/functions_74.html b/search/functions_74.html new file mode 100644 index 0000000..8b138f0 --- /dev/null +++ b/search/functions_74.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_74.js b/search/functions_74.js new file mode 100644 index 0000000..bbea40d --- /dev/null +++ b/search/functions_74.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['test_5fname',['test_name',['../run-tests_8php.html#ad964bb063d72c67afb3c46dc22f2b5ea',1,'run-tests.php']]], + ['test_5fsort',['test_sort',['../run-tests_8php.html#a32eba0e5c52e2d82b1c0ffd0a863ec63',1,'run-tests.php']]] +]; diff --git a/search/functions_76.html b/search/functions_76.html new file mode 100644 index 0000000..916b423 --- /dev/null +++ b/search/functions_76.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_76.js b/search/functions_76.js new file mode 100644 index 0000000..501f2a1 --- /dev/null +++ b/search/functions_76.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['verify_5fconfig',['verify_config',['../run-tests_8php.html#aa5c21ee7711c7ad2d10f98f065470f5d',1,'run-tests.php']]] +]; diff --git a/search/functions_77.html b/search/functions_77.html new file mode 100644 index 0000000..26195f0 --- /dev/null +++ b/search/functions_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_77.js b/search/functions_77.js new file mode 100644 index 0000000..8e42ab2 --- /dev/null +++ b/search/functions_77.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['write_5finformation',['write_information',['../run-tests_8php.html#a79e744a806ab2d3b5aac3002e6b016c9',1,'run-tests.php']]] +]; diff --git a/search/functions_7a.html b/search/functions_7a.html new file mode 100644 index 0000000..9c9763f --- /dev/null +++ b/search/functions_7a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_7a.js b/search/functions_7a.js new file mode 100644 index 0000000..f258496 --- /dev/null +++ b/search/functions_7a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['zend_5fend_5farg_5finfo',['ZEND_END_ARG_INFO',['../php__raphf_8c.html#a9337bda6793399d5917999063e1aa636',1,'php_raphf.c']]] +]; diff --git a/search/mag_sel.png b/search/mag_sel.png new file mode 100644 index 0000000000000000000000000000000000000000..81f6040a2092402b4d98f9ffa8855d12a0d4ca17 GIT binary patch literal 563 zcmV-30?hr1P)zxx&tqG15pu7)IiiXFflOc2k;dXd>%13GZAy? zRz!q0=|E6a6vV)&ZBS~G9oe0kbqyw1*gvY`{Pop2oKq#FlzgXt@Xh-7fxh>}`Fxg> z$%N%{$!4=5nM{(;=c!aG1Ofr^Do{u%Ih{^&Fc@H2)+a-?TBXrw5DW&z%Nb6mQ!L9O zl}b@6mB?f=tX3;#vl)}ggh(Vpyh(IK z(Mb0D{l{U$FsRjP;!{($+bsaaVi8T#1c0V#qEIOCYa9@UVLV`f__E81L;?WEaRA;Y zUH;rZ;vb;mk7JX|$=i3O~&If0O@oZfLg8gfIjW=dcBsz;gI=!{-r4# z4%6v$&~;q^j7Fo67yJ(NJWuX+I~I!tj^nW3?}^9bq|<3^+vapS5sgM^x7!cs(+mMT z&y%j};&~po+YO)3hoUH4E*E;e9>?R6SS&`X)p`njycAVcg{rEb41T{~Hk(bl-7eSb zmFxA2uIqo#@R?lKm50ND`~6Nfn|-b1|L6O98vt3Tx@gKz#isxO002ovPDHLkV1kyW B_l^Jn literal 0 HcmV?d00001 diff --git a/search/nomatches.html b/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
+
No Matches
+
+ + diff --git a/search/search.css b/search/search.css new file mode 100644 index 0000000..4d7612f --- /dev/null +++ b/search/search.css @@ -0,0 +1,271 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 8px; + right: 0px; + width: 170px; + z-index: 102; + background-color: white; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:111px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/search/search.js b/search/search.js new file mode 100644 index 0000000..ac0bf5d --- /dev/null +++ b/search/search.js @@ -0,0 +1,805 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001101001001000101001010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 1: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 2: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 3: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 4: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001101001001000101001010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + 5: "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "files", + 3: "functions", + 4: "variables", + 5: "typedefs" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var hexCode; + if (code<16) + { + hexCode="0"+code.toString(16); + } + else + { + hexCode=code.toString(16); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + if (indexSectionsWithContent[this.searchIndex].charAt(code) == '1') + { + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; ek7RCwB~R6VQOP#AvB$vH7i{6H{96zot$7cZT<7246EF5Np6N}+$IbiG6W zg#87A+NFaX+=_^xM1#gCtshC=E{%9^uQX_%?YwXvo{#q&MnpJ8uh(O?ZRc&~_1%^SsPxG@rfElJg-?U zm!Cz-IOn(qJP3kDp-^~qt+FGbl=5jNli^Wj_xIBG{Rc0en{!oFvyoNC7{V~T8}b>| z=jL2WIReZzX(YN(_9fV;BBD$VXQIxNasAL8ATvEu822WQ%mvv4FO#qs` BFGc_W literal 0 HcmV?d00001 diff --git a/search/search_r.png b/search/search_r.png new file mode 100644 index 0000000000000000000000000000000000000000..97ee8b439687084201b79c6f776a41f495c6392a GIT binary patch literal 612 zcmV-q0-ODbP)PbXFRCwB?)W514K@j&X?z2*SxFI6-@HT2E2K=9X9%Pb zEK*!TBw&g(DMC;|A)uGlRkOS9vd-?zNs%bR4d$w+ox_iFnE8fvIvv7^5<(>Te12Li z7C)9srCzmK{ZcNM{YIl9j{DePFgOWiS%xG@5CnnnJa4nvY<^glbz7^|-ZY!dUkAwd z{gaTC@_>b5h~;ug#R0wRL0>o5!hxm*s0VW?8dr}O#zXTRTnrQm_Z7z1Mrnx>&p zD4qifUjzLvbVVWi?l?rUzwt^sdb~d!f_LEhsRVIXZtQ=qSxuxqm zEX#tf>$?M_Y1-LSDT)HqG?`%-%ZpY!#{N!rcNIiL;G7F0`l?)mNGTD9;f9F5Up3Kg zw}a<-JylhG&;=!>B+fZaCX+?C+kHYrP%c?X2!Zu_olK|GcS4A70HEy;vn)I0>0kLH z`jc(WIaaHc7!HS@f*^R^Znx8W=_jIl2oWJoQ*h1^$FX!>*PqR1J8k|fw}w_y}TpE>7m8DqDO<3z`OzXt$ccSejbEZCg@0000 + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_70.js b/search/typedefs_70.js new file mode 100644 index 0000000..50c0977 --- /dev/null +++ b/search/typedefs_70.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['php_5fpersistent_5fhandle_5ffactory_5ft',['php_persistent_handle_factory_t',['../php__raphf_8h.html#a833eaa62ffcc217e5749c26c18885b17',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5flist_5ft',['php_persistent_handle_list_t',['../php__raphf_8h.html#a07f599598d2b87b188f39871d026c177',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fprovider_5ft',['php_persistent_handle_provider_t',['../php__raphf_8h.html#a31f0595f4f726f762790cef844568fc4',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fretire_5ft',['php_persistent_handle_retire_t',['../php__raphf_8h.html#a8f7d6389c67478ca0b99729a5dd3d305',1,'php_raphf.h']]], + ['php_5fpersistent_5fhandle_5fwakeup_5ft',['php_persistent_handle_wakeup_t',['../php__raphf_8h.html#a681ca1f7c1249199b45270be60c721c6',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fcopy_5ft',['php_resource_factory_handle_copy_t',['../php__raphf_8h.html#a80169af0f2adacf3ec7c7ee1dfb19f96',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fctor_5ft',['php_resource_factory_handle_ctor_t',['../php__raphf_8h.html#a1c5d952a60130d2a68c8d68db2bebbd8',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fhandle_5fdtor_5ft',['php_resource_factory_handle_dtor_t',['../php__raphf_8h.html#a472a7e1909aed64d00d43ea5c112b854',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5fops_5ft',['php_resource_factory_ops_t',['../php__raphf_8h.html#a29e0d7a66e441a5265ddf2f0adbbb3af',1,'php_raphf.h']]], + ['php_5fresource_5ffactory_5ft',['php_resource_factory_t',['../php__raphf_8h.html#a4817c4b3d4077c48dff36376487ba8d4',1,'php_raphf.h']]] +]; diff --git a/search/typedefs_73.html b/search/typedefs_73.html new file mode 100644 index 0000000..f468e5a --- /dev/null +++ b/search/typedefs_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_73.js b/search/typedefs_73.js new file mode 100644 index 0000000..88ebcd4 --- /dev/null +++ b/search/typedefs_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['status',['STATUS',['../php__raphf_8c.html#a0cb9c7fae5afe4237eb4d5d43318fa18',1,'php_raphf.c']]] +]; diff --git a/search/variables_24.html b/search/variables_24.html new file mode 100644 index 0000000..9ac2d25 --- /dev/null +++ b/search/variables_24.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_24.js b/search/variables_24.js new file mode 100644 index 0000000..7765992 --- /dev/null +++ b/search/variables_24.js @@ -0,0 +1,42 @@ +var searchData= +[ + ['_24cfg',['$cfg',['../run-tests_8php.html#aefee7abaa50a3edbaa97b91500ad8d55',1,'run-tests.php']]], + ['_24cfgfiles',['$cfgfiles',['../run-tests_8php.html#a343028842b54f66ac85f28bf655418ad',1,'run-tests.php']]], + ['_24cfgtypes',['$cfgtypes',['../run-tests_8php.html#a10fc9d27ec7c9a08c0fe08591512a207',1,'run-tests.php']]], + ['_24compression',['$compression',['../run-tests_8php.html#a99cfcd818d46c54bb56d6100a25f8442',1,'run-tests.php']]], + ['_24conf_5fpassed',['$conf_passed',['../run-tests_8php.html#aa0465202b05d9f8fb799a1129f1d5aff',1,'run-tests.php']]], + ['_24cur_5fdir',['$CUR_DIR',['../run-tests_8php.html#a8839bea203a9530f31afe5b4fd695619',1,'run-tests.php']]], + ['_24cwd',['$cwd',['../run-tests_8php.html#aee97a10fa60656a1f67653eef1d443aa',1,'run-tests.php']]], + ['_24end_5ftime',['$end_time',['../run-tests_8php.html#a53df77622d4c20adefa70db294377d7b',1,'run-tests.php']]], + ['_24environment',['$environment',['../run-tests_8php.html#a73233e5c69490bd0289b2a86e74d50d2',1,'run-tests.php']]], + ['_24exts_5fskipped',['$exts_skipped',['../run-tests_8php.html#a701f5147cac0d8b152016a46b8b19bf9',1,'run-tests.php']]], + ['_24exts_5ftested',['$exts_tested',['../run-tests_8php.html#a395fc0133b1ff583c66af4ab73ac31ef',1,'run-tests.php']]], + ['_24exts_5fto_5ftest',['$exts_to_test',['../run-tests_8php.html#ac9ba1f847884a4a99ee8dfa747009685',1,'run-tests.php']]], + ['_24failed_5ftests_5ffile',['$failed_tests_file',['../run-tests_8php.html#aea4ca32e2a82ee524d8d055ffdb6c212',1,'run-tests.php']]], + ['_24html_5ffile',['$html_file',['../run-tests_8php.html#accbb3cf0223b6bb42a6dc6b3533ecc01',1,'run-tests.php']]], + ['_24html_5foutput',['$html_output',['../run-tests_8php.html#a3a0e46c869558acfaafedc4fdb66ebe0',1,'run-tests.php']]], + ['_24ignored_5fby_5fext',['$ignored_by_ext',['../run-tests_8php.html#a816f67c361ea16a405572e5c3b7f656a',1,'run-tests.php']]], + ['_24ini_5foverwrites',['$ini_overwrites',['../run-tests_8php.html#ae2c4e151f261725bf204ff5e527277c7',1,'run-tests.php']]], + ['_24just_5fsave_5fresults',['$just_save_results',['../run-tests_8php.html#aba2101e480c1af1791275d24ae7d4981',1,'run-tests.php']]], + ['_24leak_5fcheck',['$leak_check',['../run-tests_8php.html#acc609ed1c03e2f93145d854c47bdd38f',1,'run-tests.php']]], + ['_24no_5fclean',['$no_clean',['../run-tests_8php.html#a159ab57397f912dbbc67940f78b59173',1,'run-tests.php']]], + ['_24optionals',['$optionals',['../run-tests_8php.html#a8c672b232318810be59b54d4992e7ce8',1,'run-tests.php']]], + ['_24output_5ffile',['$output_file',['../run-tests_8php.html#aecf92028114447a7ae1d75893e0e935f',1,'run-tests.php']]], + ['_24pass_5foption_5fn',['$pass_option_n',['../run-tests_8php.html#a97b38aad14813732399a280b6946f0e5',1,'run-tests.php']]], + ['_24pass_5foptions',['$pass_options',['../run-tests_8php.html#ae0d6dd6e44915008ac97fea4cbaea6f1',1,'run-tests.php']]], + ['_24php',['$php',['../run-tests_8php.html#af2089c7d10d29d521f5fe550a880694e',1,'run-tests.php']]], + ['_24php_5fcgi',['$php_cgi',['../run-tests_8php.html#a394e82ca1b1faad10bf02d9e963aa828',1,'run-tests.php']]], + ['_24php_5ffailed_5ftests',['$PHP_FAILED_TESTS',['../run-tests_8php.html#a469a2c11e23d1ad0b30f54188186b79e',1,'run-tests.php']]], + ['_24redir_5ftests',['$redir_tests',['../run-tests_8php.html#a5aa614ce11c4a2d4360272186f86ae59',1,'run-tests.php']]], + ['_24start_5ftime',['$start_time',['../run-tests_8php.html#a73a034a7a0fbdd2c93f23fb6c9946ee9',1,'run-tests.php']]], + ['_24temp_5fsource',['$temp_source',['../run-tests_8php.html#ad620c540e4f371601350d53dd270389c',1,'run-tests.php']]], + ['_24temp_5ftarget',['$temp_target',['../run-tests_8php.html#af33d2e697a4c03dd370d05bd9d97e8ae',1,'run-tests.php']]], + ['_24temp_5furlbase',['$temp_urlbase',['../run-tests_8php.html#afe629252d7bda4fd7c9709071c45989c',1,'run-tests.php']]], + ['_24test_5fcnt',['$test_cnt',['../run-tests_8php.html#a87b001832b29e3bfdc9c61540267275f',1,'run-tests.php']]], + ['_24test_5fdirs',['$test_dirs',['../run-tests_8php.html#a39ce6b56704c32204d3faecfe1228fa8',1,'run-tests.php']]], + ['_24test_5ffiles',['$test_files',['../run-tests_8php.html#af3f97fc0ee40af3e270be829ea69aeec',1,'run-tests.php']]], + ['_24test_5fidx',['$test_idx',['../run-tests_8php.html#aea83472091448a1fb38057c46c595b64',1,'run-tests.php']]], + ['_24test_5fresults',['$test_results',['../run-tests_8php.html#a7f4ebc4532c60daebb981d3841116be4',1,'run-tests.php']]], + ['_24valgrind_5fheader',['$valgrind_header',['../run-tests_8php.html#aa1908ecaf2d431a053215d99bfe665f5',1,'run-tests.php']]], + ['_24valgrind_5fversion',['$valgrind_version',['../run-tests_8php.html#a49002e2e4ad6aa6d504b676eb2f188ee',1,'run-tests.php']]] +]; diff --git a/search/variables_63.html b/search/variables_63.html new file mode 100644 index 0000000..7575dc9 --- /dev/null +++ b/search/variables_63.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_63.js b/search/variables_63.js new file mode 100644 index 0000000..481f19f --- /dev/null +++ b/search/variables_63.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['copy',['copy',['../php__raphf_8h.html#a8094f85df976aff73148bc579ae72e38',1,'php_resource_factory_ops']]], + ['ctor',['ctor',['../php__raphf_8h.html#a044b07071758dbc53f87bfd212400ac0',1,'php_resource_factory_ops']]] +]; diff --git a/search/variables_64.html b/search/variables_64.html new file mode 100644 index 0000000..89296ec --- /dev/null +++ b/search/variables_64.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_64.js b/search/variables_64.js new file mode 100644 index 0000000..8bcb860 --- /dev/null +++ b/search/variables_64.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['data',['data',['../structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12',1,'php_resource_factory']]], + ['dtor',['dtor',['../php__raphf_8h.html#acb8a7a04b86f08db41a2d6232676c65c',1,'php_resource_factory_ops::dtor()'],['../structphp__resource__factory.html#a7b48ed1c081288e7dd396bdb2f9187f9',1,'php_resource_factory::dtor()']]] +]; diff --git a/search/variables_65.html b/search/variables_65.html new file mode 100644 index 0000000..4ccb91b --- /dev/null +++ b/search/variables_65.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_65.js b/search/variables_65.js new file mode 100644 index 0000000..6384721 --- /dev/null +++ b/search/variables_65.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['else',['else',['../run-tests_8php.html#af73f2f0b6d63ba73c90d639891a925fb',1,'run-tests.php']]] +]; diff --git a/search/variables_66.html b/search/variables_66.html new file mode 100644 index 0000000..802fdbc --- /dev/null +++ b/search/variables_66.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_66.js b/search/variables_66.js new file mode 100644 index 0000000..e360d2e --- /dev/null +++ b/search/variables_66.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['fops',['fops',['../structphp__resource__factory.html#af46453098d0078f9015184549b363824',1,'php_resource_factory']]], + ['free',['free',['../php__raphf_8h.html#a653a4a0e9c39ad942e9573e197f62974',1,'php_persistent_handle_list']]], + ['free_5fon_5fabandon',['free_on_abandon',['../php__raphf_8h.html#a84ffa94401b9869e14c190be4bb1b6be',1,'php_persistent_handle_factory']]] +]; diff --git a/search/variables_68.html b/search/variables_68.html new file mode 100644 index 0000000..aabcfa0 --- /dev/null +++ b/search/variables_68.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_68.js b/search/variables_68.js new file mode 100644 index 0000000..2f4ddea --- /dev/null +++ b/search/variables_68.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hash',['hash',['../structphp__persistent__handle__globals.html#abb7eb603d6855b2f9bb8987349c42e35',1,'php_persistent_handle_globals']]] +]; diff --git a/search/variables_69.html b/search/variables_69.html new file mode 100644 index 0000000..442bf33 --- /dev/null +++ b/search/variables_69.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_69.js b/search/variables_69.js new file mode 100644 index 0000000..1235b56 --- /dev/null +++ b/search/variables_69.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['ident',['ident',['../php__raphf_8h.html#ae874c03caffa8eaa265dd52ebf593c02',1,'php_persistent_handle_factory']]] +]; diff --git a/search/variables_6c.html b/search/variables_6c.html new file mode 100644 index 0000000..c136114 --- /dev/null +++ b/search/variables_6c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_6c.js b/search/variables_6c.js new file mode 100644 index 0000000..7d00fdb --- /dev/null +++ b/search/variables_6c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['list',['list',['../php__raphf_8h.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0',1,'php_persistent_handle_provider']]] +]; diff --git a/search/variables_70.html b/search/variables_70.html new file mode 100644 index 0000000..e36abe9 --- /dev/null +++ b/search/variables_70.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_70.js b/search/variables_70.js new file mode 100644 index 0000000..15ede00 --- /dev/null +++ b/search/variables_70.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['provider',['provider',['../php__raphf_8h.html#a43aabcbe7ec4b5ff463f74cfcf788f51',1,'php_persistent_handle_factory']]] +]; diff --git a/search/variables_71.html b/search/variables_71.html new file mode 100644 index 0000000..920bc00 --- /dev/null +++ b/search/variables_71.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_71.js b/search/variables_71.js new file mode 100644 index 0000000..2b7c4bb --- /dev/null +++ b/search/variables_71.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['qa_5freports_5fpage',['QA_REPORTS_PAGE',['../run-tests_8php.html#a249ef5a2911b699aecb5965b0a2e169e',1,'run-tests.php']]], + ['qa_5fsubmission_5fpage',['QA_SUBMISSION_PAGE',['../run-tests_8php.html#a204a269a4629b5632bec86c7102d4593',1,'run-tests.php']]] +]; diff --git a/search/variables_72.html b/search/variables_72.html new file mode 100644 index 0000000..0bf4f34 --- /dev/null +++ b/search/variables_72.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_72.js b/search/variables_72.js new file mode 100644 index 0000000..1a001c4 --- /dev/null +++ b/search/variables_72.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['refcount',['refcount',['../structphp__resource__factory.html#a00ebf2bd2227f5d4826751b3b475769f',1,'php_resource_factory']]], + ['retire',['retire',['../php__raphf_8h.html#a9299f3f0821061ad93d15c10cf735b6b',1,'php_persistent_handle_factory']]], + ['rf',['rf',['../php__raphf_8h.html#a8204714f100b74b028652951ca40abd3',1,'php_persistent_handle_provider']]] +]; diff --git a/search/variables_73.html b/search/variables_73.html new file mode 100644 index 0000000..234c326 --- /dev/null +++ b/search/variables_73.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_73.js b/search/variables_73.js new file mode 100644 index 0000000..17637af --- /dev/null +++ b/search/variables_73.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['str',['str',['../structphp__persistent__handle__factory.html#a71be5a461851c6d3b93fa88126a2feae',1,'php_persistent_handle_factory']]] +]; diff --git a/search/variables_75.html b/search/variables_75.html new file mode 100644 index 0000000..fa1b2e6 --- /dev/null +++ b/search/variables_75.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_75.js b/search/variables_75.js new file mode 100644 index 0000000..48aea30 --- /dev/null +++ b/search/variables_75.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['used',['used',['../php__raphf_8h.html#a119a44fd9f5ae066b6d77e7a35a25cd0',1,'php_persistent_handle_list']]] +]; diff --git a/search/variables_77.html b/search/variables_77.html new file mode 100644 index 0000000..66aafb9 --- /dev/null +++ b/search/variables_77.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_77.js b/search/variables_77.js new file mode 100644 index 0000000..575665a --- /dev/null +++ b/search/variables_77.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['wakeup',['wakeup',['../php__raphf_8h.html#a6633b7c860e4538942e0367d64ed5af7',1,'php_persistent_handle_factory']]] +]; diff --git a/structphp__persistent__handle__factory.html b/structphp__persistent__handle__factory.html new file mode 100644 index 0000000..e4334f5 --- /dev/null +++ b/structphp__persistent__handle__factory.html @@ -0,0 +1,267 @@ + + + + + + +Resource and persistent handle factory API: php_persistent_handle_factory Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
php_persistent_handle_factory Struct Reference
+
+
+ +

Definition of a persistent handle factory. + More...

+ +

#include <php_raphf.h>

+
+Collaboration diagram for php_persistent_handle_factory:
+
+
Collaboration graph
+ + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Data Fields

php_persistent_handle_provider_tprovider
 The persistent handle provider. More...
 
php_persistent_handle_wakeup_t wakeup
 The persistent handle wakeup routine; may be NULL. More...
 
php_persistent_handle_retire_t retire
 The persistent handle retire routine; may be NULL. More...
 
struct {
   char *   str
 ident string More...
 
   size_t   len
 ident length More...
 
ident
 The ident for which this factory manages resources. More...
 
unsigned free_on_abandon:1
 Whether it has to be free'd on php_persistent_handle_abandon() More...
 
+

Detailed Description

+

Definition of a persistent handle factory.

+

php_persistent_handle_concede() will return a pointer to a php_persistent_handle_factory if a provider for the name_str has been registered with php_persistent_handle_provide().

+

Field Documentation

+ +
+
+ + + + +
unsigned php_persistent_handle_factory::free_on_abandon
+
+ +

Whether it has to be free'd on php_persistent_handle_abandon()

+ +
+
+ +
+
+ + + + +
struct { ... } php_persistent_handle_factory::ident
+
+ +

The ident for which this factory manages resources.

+ +
+
+ +
+
+ + + + +
size_t php_persistent_handle_factory::len
+
+ +

ident length

+ +
+
+ +
+
+ + + + +
php_persistent_handle_provider_t* php_persistent_handle_factory::provider
+
+ +

The persistent handle provider.

+ +
+
+ +
+
+ + + + +
php_persistent_handle_retire_t php_persistent_handle_factory::retire
+
+ +

The persistent handle retire routine; may be NULL.

+ +
+
+ +
+
+ + + + +
char* php_persistent_handle_factory::str
+
+ +

ident string

+ +
+
+ +
+
+ + + + +
php_persistent_handle_wakeup_t php_persistent_handle_factory::wakeup
+
+ +

The persistent handle wakeup routine; may be NULL.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/structphp__persistent__handle__factory.js b/structphp__persistent__handle__factory.js new file mode 100644 index 0000000..956d247 --- /dev/null +++ b/structphp__persistent__handle__factory.js @@ -0,0 +1,10 @@ +var structphp__persistent__handle__factory = +[ + [ "free_on_abandon", "structphp__persistent__handle__factory.html#a84ffa94401b9869e14c190be4bb1b6be", null ], + [ "ident", "structphp__persistent__handle__factory.html#ae874c03caffa8eaa265dd52ebf593c02", null ], + [ "len", "structphp__persistent__handle__factory.html#ab26e72bac3190bd8cd4dadc6a39d86c4", null ], + [ "provider", "structphp__persistent__handle__factory.html#a43aabcbe7ec4b5ff463f74cfcf788f51", null ], + [ "retire", "structphp__persistent__handle__factory.html#a9299f3f0821061ad93d15c10cf735b6b", null ], + [ "str", "structphp__persistent__handle__factory.html#a71be5a461851c6d3b93fa88126a2feae", null ], + [ "wakeup", "structphp__persistent__handle__factory.html#a6633b7c860e4538942e0367d64ed5af7", null ] +]; \ No newline at end of file diff --git a/structphp__persistent__handle__factory__coll__graph.map b/structphp__persistent__handle__factory__coll__graph.map new file mode 100644 index 0000000..e77eb5d --- /dev/null +++ b/structphp__persistent__handle__factory__coll__graph.map @@ -0,0 +1,6 @@ + + + + + + diff --git a/structphp__persistent__handle__factory__coll__graph.md5 b/structphp__persistent__handle__factory__coll__graph.md5 new file mode 100644 index 0000000..172d907 --- /dev/null +++ b/structphp__persistent__handle__factory__coll__graph.md5 @@ -0,0 +1 @@ +18d60c8d8a2ce7aadc659997691bbb90 \ No newline at end of file diff --git a/structphp__persistent__handle__factory__coll__graph.png b/structphp__persistent__handle__factory__coll__graph.png new file mode 100644 index 0000000000000000000000000000000000000000..05c1c2b6d5223bc455995b077775357f47740015 GIT binary patch literal 16223 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 bb%FAkRDjhrX)+2<%p;zN%ZL?-=)U+rK0CdG literal 0 HcmV?d00001 diff --git a/structphp__persistent__handle__globals.html b/structphp__persistent__handle__globals.html new file mode 100644 index 0000000..0e63dcb --- /dev/null +++ b/structphp__persistent__handle__globals.html @@ -0,0 +1,142 @@ + + + + + + +Resource and persistent handle factory API: php_persistent_handle_globals Struct Reference + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
php_persistent_handle_globals Struct Reference
+
+
+ +

Definition of the global raphf hash. + More...

+ +

#include <php_raphf.h>

+ + + + + + +

+Data Fields

ulong limit
 
HashTable hash
 
+

Detailed Description

+

Definition of the global raphf hash.

+

Field Documentation

+ +
+
+ + + + +
HashTable php_persistent_handle_globals::hash
+
+ +
+
+ +
+
+ + + + +
ulong php_persistent_handle_globals::limit
+
+ +
+
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/structphp__persistent__handle__list.html b/structphp__persistent__handle__list.html new file mode 100644 index 0000000..3eb4baa --- /dev/null +++ b/structphp__persistent__handle__list.html @@ -0,0 +1,173 @@ + + + + + + +Resource and persistent handle factory API: php_persistent_handle_list Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
php_persistent_handle_list Struct Reference
+
+
+ +

Persistent handles storage. + More...

+ +

#include <php_raphf.h>

+ + + + + + + + +

+Data Fields

HashTable free
 Storage of free resources. More...
 
ulong used
 Count of acquired resources. More...
 
+

Detailed Description

+

Persistent handles storage.

+

Field Documentation

+ +
+
+ + + + +
HashTable php_persistent_handle_list::free
+
+ +

Storage of free resources.

+ +
+
+ +
+
+ + + + +
ulong php_persistent_handle_list::used
+
+ +

Count of acquired resources.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/structphp__persistent__handle__list.js b/structphp__persistent__handle__list.js new file mode 100644 index 0000000..4493170 --- /dev/null +++ b/structphp__persistent__handle__list.js @@ -0,0 +1,5 @@ +var structphp__persistent__handle__list = +[ + [ "free", "structphp__persistent__handle__list.html#a653a4a0e9c39ad942e9573e197f62974", null ], + [ "used", "structphp__persistent__handle__list.html#a119a44fd9f5ae066b6d77e7a35a25cd0", null ] +]; \ No newline at end of file diff --git a/structphp__persistent__handle__provider.html b/structphp__persistent__handle__provider.html new file mode 100644 index 0000000..7c46d0c --- /dev/null +++ b/structphp__persistent__handle__provider.html @@ -0,0 +1,183 @@ + + + + + + +Resource and persistent handle factory API: php_persistent_handle_provider Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
php_persistent_handle_provider Struct Reference
+
+
+ +

Definition of a persistent handle provider. + More...

+ +

#include <php_raphf.h>

+
+Collaboration diagram for php_persistent_handle_provider:
+
+
Collaboration graph
+ + +
[legend]
+ + + + + + + + +

+Data Fields

php_persistent_handle_list_t list
 The list of free handles. More...
 
php_resource_factory_t rf
 The resource factory. More...
 
+

Detailed Description

+

Definition of a persistent handle provider.

+

Holds a resource factory an a persistent handle list.

+

Field Documentation

+ +
+
+ + + + +
php_persistent_handle_list_t php_persistent_handle_provider::list
+
+ +

The list of free handles.

+

Hash of "ident" => array(handles) entries. Persistent handles are acquired out of this list.

+ +
+
+ +
+
+ + + + +
php_resource_factory_t php_persistent_handle_provider::rf
+
+ +

The resource factory.

+

New handles are created by this factory.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/structphp__persistent__handle__provider.js b/structphp__persistent__handle__provider.js new file mode 100644 index 0000000..39d75c6 --- /dev/null +++ b/structphp__persistent__handle__provider.js @@ -0,0 +1,5 @@ +var structphp__persistent__handle__provider = +[ + [ "list", "structphp__persistent__handle__provider.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0", null ], + [ "rf", "structphp__persistent__handle__provider.html#a8204714f100b74b028652951ca40abd3", null ] +]; \ No newline at end of file diff --git a/structphp__persistent__handle__provider__coll__graph.map b/structphp__persistent__handle__provider__coll__graph.map new file mode 100644 index 0000000..55d5511 --- /dev/null +++ b/structphp__persistent__handle__provider__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/structphp__persistent__handle__provider__coll__graph.md5 b/structphp__persistent__handle__provider__coll__graph.md5 new file mode 100644 index 0000000..4d7a78a --- /dev/null +++ b/structphp__persistent__handle__provider__coll__graph.md5 @@ -0,0 +1 @@ +406dc6a6b287544e587cde8e3d2feb35 \ No newline at end of file diff --git a/structphp__persistent__handle__provider__coll__graph.png b/structphp__persistent__handle__provider__coll__graph.png new file mode 100644 index 0000000000000000000000000000000000000000..2eec34dedf038d0601715a7ca0847d95f94d018c GIT binary patch literal 10596 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 z z97oghNmTsJIMon7+9o`S2DpcqCWkH78hw%y&A zK(na0Nu?&Cxwzj%yRorDQW*2pQ|E)K1}Uv?X>#9s;%v)-eMd<_o~z?~p`y=*Z`yLD z8J(U&NQ#W5@}+f6+Q3j*C!rF_^pO5PRAD4#pim$#pFj6LFCD`MDE50i$MLWHuzdFHVSWl zDCMaW$FY+G&rhF9O>u5Uu`z;a!+sWeEP!~1>0d*K|7K-X@cEkz2`XubV^=7)AxY17 zlAz+wAzhrDKhI1Kiy8IP`5pB*=Ty2F{2Y(P84Qm+w zCNJduXf62kas<#ulW*)M)+X=x7q>Taio zmoL!)0~2CW`0@=Df&Oc%d$ru0oE`m{;;z@1XJp98Nh&h;2%q`9tU8~^aqc%BfnS*b z075~*seTK-g-*P#D11F#&q}gvi6ch7@pm6qie_`9^tVd|eE`|g=M%KEevV}NtW|OM z)iuS--J3v+Q6{nc^I6fpFaJxtL4(M>xrYHcTx%5{5l}jQqZ==ErF43mjj-iJca7vz z^+efqorQ%39RmY8FE1~o?xv6)JlsY$MQB-**!(#AmP#3IO#aGmB~*qPz9qN% ztXRi%xjTMsB*K{bV<*^+qAnTZ>6?6)+wB6Sr{@-T?QC zfS6hB+i0=wim;`RVo<#H$mJgb) z{WVPQGPIZ0e!>dG*iHEU;Bh0kn)y!XHWtPF1?Z_jAM=2-C7Auh@o)G_aVNW1uKdj< z&slEs8d=}wexavp|8yeO{BV7JK`EcfqVy7-?jEVH`?KV=x0Q8}Bn$+_vD4=oJ6xROgMZFasLJ44yk#8&-SGS+Bh=Nk(3TKmF7BNbDgeO^1z@l=a6*GN{ z6r6H+1`yitJa$)KO?2II{o~wGphY#4d5=&OR6EMEz5`Q8@J&hbSh8i2s%PEh(Euo7 z1qu}@T8uPbS@+VzOzSFEDa)=jmv%f1Kdwy-oQf=9 zmymZH7jrKnKm+i0FyOHGbL^IH)OfT7%u?BvJOXuZ?H+R???%XmA24-~9Em zOGVR3c z0vC5C^YydRN{!7ES%W$9WxeOfo`*o8L(za4FQC_WZ&h}s(F{DBqE8Sbb9Yk#z7?fcrcH;6+yUb=^Zp^(7x;h#MK3E%I&igwJyRh={^r=fg-(+DhbY``b z;7oD2*mU{BeL%8=943Mzh*?lJ>O_U?RZ@qIiN}r8~Ls?Im|ZJw-#%n*uC>WmLw}X`*&b= z?vEKbFC4B912~V5y!!d`=N_00$h98G0_s`EQk=9CmxXiVJ|{ zfyCnO=eMtsArgXeOM%JO3O?)!Ai}QV$ImD8g`H>Hvu`e~fyZhBT>cbcXIdf0$fJEFSvn2Y03iZz5?uzRp8^@%9GnDd>j(2S zplaDtG=QJk4vr6b9c^{s4(MR##VRG&MGA8X86eIgJ?1yZ~GfbFLQ|v^^;Z zG+|*I^85E~dCQvi2@wy-4s^hc4qOmGmxaiwzPS;?KY{P}+@2(LZn+X_Yiol*C}S{z zJhu{fq)<{;c8@s`yRfhjIL^Sq{FcC^y4S;!EfBtB)8Ko&I5kP$Us0V26pv4zKLeGK z6wqO5;0A$>x2QD+8uHuh>^PJTWgZq526SL5=o8gN0af0V5yYK0bnJQm&seb&3UVwru=W zo#xcF!2eU=VuDMu`NOHJUz}$fZL8*TwHpiDX%Ucu`6fjUn-w4D7vMC{JfBC)+ z-IY?4!?mH);q2>BU|&a53f{%W#&%j4wjbjtdC@>NAaQ^TkOQs%o-FW!?~IolI}aLz zNCEE6M4c;RnNd^Z;GiZ-;9*PpvEU`?dnf~(GhUxR7Ss~ngI4|q9FF-9{R0Acoo6LD zjGL)x#J$=7hut3XIzX6KC3p(pH9&GZ1e?pB?k=g}$<7)yN zWnMrPXJe!gz@U_Qln{Y#`wt=FtSnT5G|C4Dm}1|fxSQ9024)$RNCaHUkGZ6U{T=Em z9Q|b=_FlD@NEA3T`kA@CYeex&&yj_rqF*YOF`iMnT-v*lINA^ zFTQ%T0?dbY`9<3a7+SNwo17>=4rK749pZVjzbKe};sLt_hK$fakf7$ZK#~K?^3F7T zE}+iscciHL6;Ty;^C?5%QL!;SH#a^|&xLNTjx8-WZjmIkeJS#O-)VfytXMp2?@SK>kTmu zI3o2u*@uhHKn?|4q6d|LGSJuchctWE`GgX?3XWmha00f5KVo3 zJ0o)c5rDE!X5c`ijsfbnz$yO6tbZ&axqH|(EsVp>;_L+&w~D3~B?7Y~_kgsHGAbQ@ zed&;>4V()&kBTFeJL10#%-;9@AQFAeZQsqH+PkLzb$AF!o|RtP`p8Uia$t3~ zT+HkuRd;-Sd`#QJ2~kN7W`#I9D{I?Ja(j=7e8jjyHg8)ee{+nhi!Qrx!8WwR)HWr`o2dJcgyKCmMH+koIdeDqVag2etT$*ARJ3wXXPk+!C$$@MWu zeARPgCIJ+>yF>D*4H!_omOn_qE3n~+ejcl`!m-h`_z U#N@3O7@LGBE2ztt!AxHM2jw@g%K!iX literal 0 HcmV?d00001 diff --git a/structphp__resource__factory.html b/structphp__resource__factory.html new file mode 100644 index 0000000..29fbff7 --- /dev/null +++ b/structphp__resource__factory.html @@ -0,0 +1,214 @@ + + + + + + +Resource and persistent handle factory API: php_resource_factory Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
php_resource_factory Struct Reference
+
+
+ +

The resource factory. + More...

+ +

#include <php_raphf.h>

+
+Collaboration diagram for php_resource_factory:
+
+
Collaboration graph
+ + +
[legend]
+ + + + + + + + + + + + + + +

+Data Fields

php_resource_factory_ops_t fops
 The resource ops. More...
 
void * data
 Opaque user data. More...
 
void(* dtor )(void *data)
 User data destructor. More...
 
unsigned refcount
 How often this factory is referenced. More...
 
+

Detailed Description

+

The resource factory.

+

Field Documentation

+ +
+
+ + + + +
void* php_resource_factory::data
+
+ +

Opaque user data.

+ +
+
+ +
+
+ + + + +
void(* php_resource_factory::dtor)(void *data)
+
+ +

User data destructor.

+ +
+
+ +
+
+ + + + +
php_resource_factory_ops_t php_resource_factory::fops
+
+ +

The resource ops.

+ +
+
+ +
+
+ + + + +
unsigned php_resource_factory::refcount
+
+ +

How often this factory is referenced.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/structphp__resource__factory.js b/structphp__resource__factory.js new file mode 100644 index 0000000..5a9c641 --- /dev/null +++ b/structphp__resource__factory.js @@ -0,0 +1,7 @@ +var structphp__resource__factory = +[ + [ "data", "structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12", null ], + [ "dtor", "structphp__resource__factory.html#a7b48ed1c081288e7dd396bdb2f9187f9", null ], + [ "fops", "structphp__resource__factory.html#af46453098d0078f9015184549b363824", null ], + [ "refcount", "structphp__resource__factory.html#a00ebf2bd2227f5d4826751b3b475769f", null ] +]; \ No newline at end of file diff --git a/structphp__resource__factory__coll__graph.map b/structphp__resource__factory__coll__graph.map new file mode 100644 index 0000000..5f33e15 --- /dev/null +++ b/structphp__resource__factory__coll__graph.map @@ -0,0 +1,3 @@ + + + diff --git a/structphp__resource__factory__coll__graph.md5 b/structphp__resource__factory__coll__graph.md5 new file mode 100644 index 0000000..b97b541 --- /dev/null +++ b/structphp__resource__factory__coll__graph.md5 @@ -0,0 +1 @@ +69f2aaa4b4c27ab42be1519f0a3b75fa \ No newline at end of file diff --git a/structphp__resource__factory__coll__graph.png b/structphp__resource__factory__coll__graph.png new file mode 100644 index 0000000000000000000000000000000000000000..e43e3008d14a71789754433356599328f499c29f GIT binary patch literal 4133 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 + + + + + +Resource and persistent handle factory API: php_resource_factory_ops Struct Reference + + + + + + + + + + + + + +
+
+ + + + + + + +
+
Resource and persistent handle factory API +
+
A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
+
+
+ + + + + +
+
+ +
+
+
+ +
+ + + + +
+ +
+ +
+ +
+
php_resource_factory_ops Struct Reference
+
+
+ +

The resource ops consisting of a ctor, a copy ctor and a dtor. + More...

+ +

#include <php_raphf.h>

+ + + + + + + + + + + +

+Data Fields

php_resource_factory_handle_ctor_t ctor
 The resource constructor. More...
 
php_resource_factory_handle_copy_t copy
 The resource's copy constructor. More...
 
php_resource_factory_handle_dtor_t dtor
 The resource's destructor. More...
 
+

Detailed Description

+

The resource ops consisting of a ctor, a copy ctor and a dtor.

+

Define this ops and register them with php_persistent_handle_provide() in MINIT.

+

Field Documentation

+ +
+
+ + + + +
php_resource_factory_handle_copy_t php_resource_factory_ops::copy
+
+ +

The resource's copy constructor.

+ +
+
+ +
+
+ + + + +
php_resource_factory_handle_ctor_t php_resource_factory_ops::ctor
+
+ +

The resource constructor.

+ +
+
+ +
+
+ + + + +
php_resource_factory_handle_dtor_t php_resource_factory_ops::dtor
+
+ +

The resource's destructor.

+ +
+
+
The documentation for this struct was generated from the following file: +
+
+ + + + diff --git a/structphp__resource__factory__ops.js b/structphp__resource__factory__ops.js new file mode 100644 index 0000000..4912413 --- /dev/null +++ b/structphp__resource__factory__ops.js @@ -0,0 +1,6 @@ +var structphp__resource__factory__ops = +[ + [ "copy", "structphp__resource__factory__ops.html#a8094f85df976aff73148bc579ae72e38", null ], + [ "ctor", "structphp__resource__factory__ops.html#a044b07071758dbc53f87bfd212400ac0", null ], + [ "dtor", "structphp__resource__factory__ops.html#acb8a7a04b86f08db41a2d6232676c65c", null ] +]; \ No newline at end of file diff --git a/sync_off.png b/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc GIT binary patch literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* literal 0 HcmV?d00001 diff --git a/sync_on.png b/sync_on.png new file mode 100644 index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76 GIT binary patch literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 literal 0 HcmV?d00001 diff --git a/tab_a.png b/tab_a.png new file mode 100644 index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 literal 0 HcmV?d00001 diff --git a/tab_b.png b/tab_b.png new file mode 100644 index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QU#tajv*C{Z}0l@H7kg?K0Lnr z!j&C6_(~HV9oQ0Pa6x{-v0AGV_E?vLn=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ literal 0 HcmV?d00001 diff --git a/tabs.css b/tabs.css new file mode 100644 index 0000000..9cf578f --- /dev/null +++ b/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} -- 2.30.2