gccxml_gem 0.9.2-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (274) hide show
  1. data/Rakefile +84 -0
  2. data/bin/gccxml.exe +0 -0
  3. data/bin/gccxml_cc1plus.exe +0 -0
  4. data/bin/gccxml_vcconfig.bat +52 -0
  5. data/bin/gccxml_vcconfig.exe +0 -0
  6. data/gccxml.rb +57 -0
  7. data/share/doc/gccxml-0.9/Copyright.txt +55 -0
  8. data/share/doc/gccxml-0.9/gccxml.html +168 -0
  9. data/share/doc/gccxml-0.9/gccxml.txt +293 -0
  10. data/share/gccxml-0.9/Borland/5.5/Wrappers/algorithm +7 -0
  11. data/share/gccxml-0.9/Borland/5.5/Wrappers/algorithm.h +7 -0
  12. data/share/gccxml-0.9/Borland/5.5/Wrappers/bitset +7 -0
  13. data/share/gccxml-0.9/Borland/5.5/Wrappers/bitset.h +7 -0
  14. data/share/gccxml-0.9/Borland/5.5/Wrappers/cctype +1 -0
  15. data/share/gccxml-0.9/Borland/5.5/Wrappers/cfloat +1 -0
  16. data/share/gccxml-0.9/Borland/5.5/Wrappers/climits +1 -0
  17. data/share/gccxml-0.9/Borland/5.5/Wrappers/cmath +1 -0
  18. data/share/gccxml-0.9/Borland/5.5/Wrappers/complex +7 -0
  19. data/share/gccxml-0.9/Borland/5.5/Wrappers/complex.h +7 -0
  20. data/share/gccxml-0.9/Borland/5.5/Wrappers/cstddef +1 -0
  21. data/share/gccxml-0.9/Borland/5.5/Wrappers/cstdio +1 -0
  22. data/share/gccxml-0.9/Borland/5.5/Wrappers/cstdlib +1 -0
  23. data/share/gccxml-0.9/Borland/5.5/Wrappers/cstring +7 -0
  24. data/share/gccxml-0.9/Borland/5.5/Wrappers/cstring.h +7 -0
  25. data/share/gccxml-0.9/Borland/5.5/Wrappers/ctime +1 -0
  26. data/share/gccxml-0.9/Borland/5.5/Wrappers/cwchar +1 -0
  27. data/share/gccxml-0.9/Borland/5.5/Wrappers/cwctype +1 -0
  28. data/share/gccxml-0.9/Borland/5.5/Wrappers/deque +7 -0
  29. data/share/gccxml-0.9/Borland/5.5/Wrappers/deque.h +7 -0
  30. data/share/gccxml-0.9/Borland/5.5/Wrappers/exception +7 -0
  31. data/share/gccxml-0.9/Borland/5.5/Wrappers/exception.h +7 -0
  32. data/share/gccxml-0.9/Borland/5.5/Wrappers/fstream +7 -0
  33. data/share/gccxml-0.9/Borland/5.5/Wrappers/fstream.h +7 -0
  34. data/share/gccxml-0.9/Borland/5.5/Wrappers/function +7 -0
  35. data/share/gccxml-0.9/Borland/5.5/Wrappers/function.h +7 -0
  36. data/share/gccxml-0.9/Borland/5.5/Wrappers/functional +7 -0
  37. data/share/gccxml-0.9/Borland/5.5/Wrappers/gccxml_typeinfo.h +146 -0
  38. data/share/gccxml-0.9/Borland/5.5/Wrappers/iomanip +7 -0
  39. data/share/gccxml-0.9/Borland/5.5/Wrappers/iomanip.h +7 -0
  40. data/share/gccxml-0.9/Borland/5.5/Wrappers/ios +7 -0
  41. data/share/gccxml-0.9/Borland/5.5/Wrappers/ios.h +7 -0
  42. data/share/gccxml-0.9/Borland/5.5/Wrappers/iosfwd +7 -0
  43. data/share/gccxml-0.9/Borland/5.5/Wrappers/iosfwd.h +7 -0
  44. data/share/gccxml-0.9/Borland/5.5/Wrappers/iostream +7 -0
  45. data/share/gccxml-0.9/Borland/5.5/Wrappers/iostream.h +7 -0
  46. data/share/gccxml-0.9/Borland/5.5/Wrappers/istream +7 -0
  47. data/share/gccxml-0.9/Borland/5.5/Wrappers/istream.h +7 -0
  48. data/share/gccxml-0.9/Borland/5.5/Wrappers/iterator +7 -0
  49. data/share/gccxml-0.9/Borland/5.5/Wrappers/iterator.h +7 -0
  50. data/share/gccxml-0.9/Borland/5.5/Wrappers/limits +7 -0
  51. data/share/gccxml-0.9/Borland/5.5/Wrappers/limits.h +7 -0
  52. data/share/gccxml-0.9/Borland/5.5/Wrappers/list +7 -0
  53. data/share/gccxml-0.9/Borland/5.5/Wrappers/list.h +7 -0
  54. data/share/gccxml-0.9/Borland/5.5/Wrappers/locale +7 -0
  55. data/share/gccxml-0.9/Borland/5.5/Wrappers/locale.h +7 -0
  56. data/share/gccxml-0.9/Borland/5.5/Wrappers/map +7 -0
  57. data/share/gccxml-0.9/Borland/5.5/Wrappers/map.h +7 -0
  58. data/share/gccxml-0.9/Borland/5.5/Wrappers/memory +7 -0
  59. data/share/gccxml-0.9/Borland/5.5/Wrappers/memory.h +7 -0
  60. data/share/gccxml-0.9/Borland/5.5/Wrappers/new +7 -0
  61. data/share/gccxml-0.9/Borland/5.5/Wrappers/new.h +7 -0
  62. data/share/gccxml-0.9/Borland/5.5/Wrappers/numeric +7 -0
  63. data/share/gccxml-0.9/Borland/5.5/Wrappers/numeric.h +7 -0
  64. data/share/gccxml-0.9/Borland/5.5/Wrappers/ostream +7 -0
  65. data/share/gccxml-0.9/Borland/5.5/Wrappers/ostream.h +7 -0
  66. data/share/gccxml-0.9/Borland/5.5/Wrappers/queue +7 -0
  67. data/share/gccxml-0.9/Borland/5.5/Wrappers/queue.h +7 -0
  68. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/codecvt +1 -0
  69. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/collate +1 -0
  70. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/ctype +1 -0
  71. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/iosbase +1 -0
  72. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/iotraits +1 -0
  73. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/iterator +1 -0
  74. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/lochelp +1 -0
  75. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/locimpl +1 -0
  76. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/locvector +1 -0
  77. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/messages +1 -0
  78. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/money +1 -0
  79. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/numbrw +1 -0
  80. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/numeral +1 -0
  81. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/rwdispatch.h +1 -0
  82. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/rwlocale +1 -0
  83. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/rwstderr_macros.h +64 -0
  84. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/string_ref +1 -0
  85. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/time +1 -0
  86. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/traits +1 -0
  87. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/tree +1 -0
  88. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/usefacet +1 -0
  89. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/valimp +1 -0
  90. data/share/gccxml-0.9/Borland/5.5/Wrappers/rw/vendor +1 -0
  91. data/share/gccxml-0.9/Borland/5.5/Wrappers/set +7 -0
  92. data/share/gccxml-0.9/Borland/5.5/Wrappers/set.h +7 -0
  93. data/share/gccxml-0.9/Borland/5.5/Wrappers/sstream +7 -0
  94. data/share/gccxml-0.9/Borland/5.5/Wrappers/sstream.h +7 -0
  95. data/share/gccxml-0.9/Borland/5.5/Wrappers/stack +7 -0
  96. data/share/gccxml-0.9/Borland/5.5/Wrappers/stack.h +7 -0
  97. data/share/gccxml-0.9/Borland/5.5/Wrappers/stdexcept +7 -0
  98. data/share/gccxml-0.9/Borland/5.5/Wrappers/stdexcept.h +7 -0
  99. data/share/gccxml-0.9/Borland/5.5/Wrappers/streambuf +7 -0
  100. data/share/gccxml-0.9/Borland/5.5/Wrappers/streambuf.h +7 -0
  101. data/share/gccxml-0.9/Borland/5.5/Wrappers/string +7 -0
  102. data/share/gccxml-0.9/Borland/5.5/Wrappers/string.h +7 -0
  103. data/share/gccxml-0.9/Borland/5.5/Wrappers/strstream +7 -0
  104. data/share/gccxml-0.9/Borland/5.5/Wrappers/strstream.h +7 -0
  105. data/share/gccxml-0.9/Borland/5.5/Wrappers/typeinfo +7 -0
  106. data/share/gccxml-0.9/Borland/5.5/Wrappers/typeinfo.h +7 -0
  107. data/share/gccxml-0.9/Borland/5.5/Wrappers/utility +7 -0
  108. data/share/gccxml-0.9/Borland/5.5/Wrappers/utility.h +7 -0
  109. data/share/gccxml-0.9/Borland/5.5/Wrappers/valarray +7 -0
  110. data/share/gccxml-0.9/Borland/5.5/Wrappers/valarray.h +7 -0
  111. data/share/gccxml-0.9/Borland/5.5/Wrappers/vector +7 -0
  112. data/share/gccxml-0.9/Borland/5.5/Wrappers/vector.h +7 -0
  113. data/share/gccxml-0.9/Borland/5.5/except.h +154 -0
  114. data/share/gccxml-0.9/Borland/5.5/gccxml_fstream.h +431 -0
  115. data/share/gccxml-0.9/Borland/5.5/gccxml_new.h +166 -0
  116. data/share/gccxml-0.9/Borland/5.5/gccxml_valarray.h +786 -0
  117. data/share/gccxml-0.9/Borland/5.5/gccxml_vector.h +1457 -0
  118. data/share/gccxml-0.9/Borland/5.5/io.h +352 -0
  119. data/share/gccxml-0.9/Borland/5.5/oaidl.h +7006 -0
  120. data/share/gccxml-0.9/Borland/5.5/propidl.h +1477 -0
  121. data/share/gccxml-0.9/Borland/5.5/rw/locimpl.h +477 -0
  122. data/share/gccxml-0.9/Borland/5.5/rw/rwlocale.h +619 -0
  123. data/share/gccxml-0.9/Borland/5.5/stdarg.h +55 -0
  124. data/share/gccxml-0.9/Borland/5.5/valarray.cc +2883 -0
  125. data/share/gccxml-0.9/GCC/2.95/algorithm +76 -0
  126. data/share/gccxml-0.9/GCC/2.95/bitset +17 -0
  127. data/share/gccxml-0.9/GCC/2.95/cctype +24 -0
  128. data/share/gccxml-0.9/GCC/2.95/clocale +14 -0
  129. data/share/gccxml-0.9/GCC/2.95/cmath +33 -0
  130. data/share/gccxml-0.9/GCC/2.95/complex +38 -0
  131. data/share/gccxml-0.9/GCC/2.95/csetjmp +13 -0
  132. data/share/gccxml-0.9/GCC/2.95/csignal +14 -0
  133. data/share/gccxml-0.9/GCC/2.95/cstdarg +12 -0
  134. data/share/gccxml-0.9/GCC/2.95/cstddef +13 -0
  135. data/share/gccxml-0.9/GCC/2.95/cstdio +55 -0
  136. data/share/gccxml-0.9/GCC/2.95/cstdlib +66 -0
  137. data/share/gccxml-0.9/GCC/2.95/cstring +34 -0
  138. data/share/gccxml-0.9/GCC/2.95/ctime +24 -0
  139. data/share/gccxml-0.9/GCC/2.95/cwchar +65 -0
  140. data/share/gccxml-0.9/GCC/2.95/cwctype +31 -0
  141. data/share/gccxml-0.9/GCC/2.95/deque +19 -0
  142. data/share/gccxml-0.9/GCC/2.95/exception +20 -0
  143. data/share/gccxml-0.9/GCC/2.95/fstream +23 -0
  144. data/share/gccxml-0.9/GCC/2.95/functional +64 -0
  145. data/share/gccxml-0.9/GCC/2.95/gccxml_bitset +1066 -0
  146. data/share/gccxml-0.9/GCC/2.95/iomanip +20 -0
  147. data/share/gccxml-0.9/GCC/2.95/iosfwd +20 -0
  148. data/share/gccxml-0.9/GCC/2.95/iostream +27 -0
  149. data/share/gccxml-0.9/GCC/2.95/iterator +39 -0
  150. data/share/gccxml-0.9/GCC/2.95/list +19 -0
  151. data/share/gccxml-0.9/GCC/2.95/map +20 -0
  152. data/share/gccxml-0.9/GCC/2.95/memory +21 -0
  153. data/share/gccxml-0.9/GCC/2.95/new +13 -0
  154. data/share/gccxml-0.9/GCC/2.95/numeric +15 -0
  155. data/share/gccxml-0.9/GCC/2.95/pthread.h +16 -0
  156. data/share/gccxml-0.9/GCC/2.95/queue +20 -0
  157. data/share/gccxml-0.9/GCC/2.95/set +20 -0
  158. data/share/gccxml-0.9/GCC/2.95/sstream +24 -0
  159. data/share/gccxml-0.9/GCC/2.95/stack +19 -0
  160. data/share/gccxml-0.9/GCC/2.95/std/bastring.cc +524 -0
  161. data/share/gccxml-0.9/GCC/2.95/std/complext.h +397 -0
  162. data/share/gccxml-0.9/GCC/2.95/std/dcomplex.h +92 -0
  163. data/share/gccxml-0.9/GCC/2.95/std/fcomplex.h +88 -0
  164. data/share/gccxml-0.9/GCC/2.95/std/gslice_array.h +170 -0
  165. data/share/gccxml-0.9/GCC/2.95/std/indirect_array.h +157 -0
  166. data/share/gccxml-0.9/GCC/2.95/std/ldcomplex.h +96 -0
  167. data/share/gccxml-0.9/GCC/2.95/std/mask_array.h +154 -0
  168. data/share/gccxml-0.9/GCC/2.95/std/slice_array.h +156 -0
  169. data/share/gccxml-0.9/GCC/2.95/std/std_valarray.h +728 -0
  170. data/share/gccxml-0.9/GCC/2.95/std/straits.h +162 -0
  171. data/share/gccxml-0.9/GCC/2.95/std/valarray_meta.h +1035 -0
  172. data/share/gccxml-0.9/GCC/2.95/stdexcept +17 -0
  173. data/share/gccxml-0.9/GCC/2.95/stl_alloc.h +1057 -0
  174. data/share/gccxml-0.9/GCC/2.95/stl_bvector.h +836 -0
  175. data/share/gccxml-0.9/GCC/2.95/stl_deque.h +1699 -0
  176. data/share/gccxml-0.9/GCC/2.95/stl_list.h +843 -0
  177. data/share/gccxml-0.9/GCC/2.95/stl_tree.h +1331 -0
  178. data/share/gccxml-0.9/GCC/2.95/stl_vector.h +828 -0
  179. data/share/gccxml-0.9/GCC/2.95/string +26 -0
  180. data/share/gccxml-0.9/GCC/2.95/strstream +23 -0
  181. data/share/gccxml-0.9/GCC/2.95/typeinfo +11 -0
  182. data/share/gccxml-0.9/GCC/2.95/utility +25 -0
  183. data/share/gccxml-0.9/GCC/2.95/valarray +52 -0
  184. data/share/gccxml-0.9/GCC/2.95/vector +19 -0
  185. data/share/gccxml-0.9/GCC/2.96/sstream +305 -0
  186. data/share/gccxml-0.9/GCC/3.0/pthread.h +16 -0
  187. data/share/gccxml-0.9/GCC/3.1/pthread.h +16 -0
  188. data/share/gccxml-0.9/GCC/3.2/bits/fstream.tcc +500 -0
  189. data/share/gccxml-0.9/GCC/3.2/bits/gthr-default.h +581 -0
  190. data/share/gccxml-0.9/GCC/3.2/bits/istream.tcc +1207 -0
  191. data/share/gccxml-0.9/GCC/3.2/bits/locale_facets.h +1810 -0
  192. data/share/gccxml-0.9/GCC/3.2/bits/locale_facets.tcc +2397 -0
  193. data/share/gccxml-0.9/GCC/3.2/bits/messages_members.h +108 -0
  194. data/share/gccxml-0.9/GCC/3.2/bits/ostream.tcc +713 -0
  195. data/share/gccxml-0.9/GCC/3.2/bits/sstream.tcc +241 -0
  196. data/share/gccxml-0.9/GCC/3.2/bits/stl_deque.h +1682 -0
  197. data/share/gccxml-0.9/GCC/3.2/bits/stl_list.h +989 -0
  198. data/share/gccxml-0.9/GCC/3.2/bits/stl_tree.h +1462 -0
  199. data/share/gccxml-0.9/GCC/3.2/bits/stl_vector.h +1085 -0
  200. data/share/gccxml-0.9/GCC/3.2/bits/valarray_meta.h +1063 -0
  201. data/share/gccxml-0.9/GCC/3.2/fstream +579 -0
  202. data/share/gccxml-0.9/GCC/3.2/pthread.h +16 -0
  203. data/share/gccxml-0.9/GCC/3.2/sstream +384 -0
  204. data/share/gccxml-0.9/GCC/3.3/bits/fstream.tcc +530 -0
  205. data/share/gccxml-0.9/GCC/3.3/bits/list.tcc +378 -0
  206. data/share/gccxml-0.9/GCC/3.3/bits/locale_facets.h +2050 -0
  207. data/share/gccxml-0.9/GCC/3.3/bits/messages_members.h +108 -0
  208. data/share/gccxml-0.9/GCC/3.3/bits/sstream.tcc +243 -0
  209. data/share/gccxml-0.9/GCC/3.3/bits/stl_deque.h +1603 -0
  210. data/share/gccxml-0.9/GCC/3.3/bits/stl_list.h +1167 -0
  211. data/share/gccxml-0.9/GCC/3.3/bits/stl_tree.h +1462 -0
  212. data/share/gccxml-0.9/GCC/3.3/bits/stl_vector.h +992 -0
  213. data/share/gccxml-0.9/GCC/3.3/bits/valarray_meta.h +1135 -0
  214. data/share/gccxml-0.9/GCC/3.3/fstream +842 -0
  215. data/share/gccxml-0.9/GCC/3.3/gccxml_builtins.h +22 -0
  216. data/share/gccxml-0.9/GCC/3.3/sstream +638 -0
  217. data/share/gccxml-0.9/GCC/3.4/bits/gthr-default.h +664 -0
  218. data/share/gccxml-0.9/GCC/3.4/gccxml_builtins.h +91 -0
  219. data/share/gccxml-0.9/GCC/4.0/gccxml_builtins.h +128 -0
  220. data/share/gccxml-0.9/GCC/4.1/bits/gthr-default.h +618 -0
  221. data/share/gccxml-0.9/GCC/4.1/gccxml_builtins.h +131 -0
  222. data/share/gccxml-0.9/GCC/4.2/gccxml_builtins.h +131 -0
  223. data/share/gccxml-0.9/GCC/4.3/gccxml_builtins.h +182 -0
  224. data/share/gccxml-0.9/IBM/8.0/adapt_headers.sh +34 -0
  225. data/share/gccxml-0.9/IBM/8.0/stdlib.h.patch +27 -0
  226. data/share/gccxml-0.9/IBM/8.0/xstring.patch +19 -0
  227. data/share/gccxml-0.9/IBM/README +8 -0
  228. data/share/gccxml-0.9/IBM/find_flags +51 -0
  229. data/share/gccxml-0.9/IBM/find_flags_common +48 -0
  230. data/share/gccxml-0.9/Intel/find_flags +56 -0
  231. data/share/gccxml-0.9/Intel/pthread.h +16 -0
  232. data/share/gccxml-0.9/MIPSpro/7.3/exception +9 -0
  233. data/share/gccxml-0.9/MIPSpro/7.3/gccxml_mpro_internals.h +21 -0
  234. data/share/gccxml-0.9/MIPSpro/7.3/iomanip +161 -0
  235. data/share/gccxml-0.9/MIPSpro/7.3/ostream +9 -0
  236. data/share/gccxml-0.9/MIPSpro/7.3/stddef.h +9 -0
  237. data/share/gccxml-0.9/MIPSpro/7.3/stl_config.h +9 -0
  238. data/share/gccxml-0.9/MIPSpro/7.3/stl_locale.h +17 -0
  239. data/share/gccxml-0.9/MIPSpro/7.3/stl_monetary.h +14 -0
  240. data/share/gccxml-0.9/MIPSpro/7.3/stl_numeric_facets.h +13 -0
  241. data/share/gccxml-0.9/MIPSpro/7.3/stl_threads.h +11 -0
  242. data/share/gccxml-0.9/MIPSpro/7.3/string +18 -0
  243. data/share/gccxml-0.9/MIPSpro/find_flags +70 -0
  244. data/share/gccxml-0.9/MIPSpro/mipspro_defs.cxx +63 -0
  245. data/share/gccxml-0.9/Sun/5.8/Cstd.patch +156 -0
  246. data/share/gccxml-0.9/Sun/5.8/adapt_headers.sh +32 -0
  247. data/share/gccxml-0.9/Sun/5.8/std-5.10.patch +22 -0
  248. data/share/gccxml-0.9/Sun/README +8 -0
  249. data/share/gccxml-0.9/Sun/find_flags +51 -0
  250. data/share/gccxml-0.9/Sun/find_flags_common +42 -0
  251. data/share/gccxml-0.9/VcInstall/vc6Include.patch +4560 -0
  252. data/share/gccxml-0.9/VcInstall/vc71Include.patch +921 -0
  253. data/share/gccxml-0.9/VcInstall/vc71PlatformSDK.patch +146 -0
  254. data/share/gccxml-0.9/VcInstall/vc7Include.patch +1139 -0
  255. data/share/gccxml-0.9/VcInstall/vc7PlatformSDK.patch +146 -0
  256. data/share/gccxml-0.9/VcInstall/vc8ExpressInclude.patch +1887 -0
  257. data/share/gccxml-0.9/VcInstall/vc8ExpressPlatformSDK.patch +252 -0
  258. data/share/gccxml-0.9/VcInstall/vc8Include.patch +1887 -0
  259. data/share/gccxml-0.9/VcInstall/vc8PlatformSDK.patch +252 -0
  260. data/share/gccxml-0.9/VcInstall/vc8sp1ExpressInclude.patch +1941 -0
  261. data/share/gccxml-0.9/VcInstall/vc8sp1Include.patch +1970 -0
  262. data/share/gccxml-0.9/VcInstall/vc8sp1PlatformSDK.patch +252 -0
  263. data/share/gccxml-0.9/VcInstall/vc9Include.patch +2047 -0
  264. data/share/gccxml-0.9/VcInstall/vc9PlatformSDK.patch +383 -0
  265. data/share/gccxml-0.9/VcInstall/vc9sp1Include.patch +2565 -0
  266. data/share/gccxml-0.9/VcInstall/vcCat.exe +0 -0
  267. data/share/gccxml-0.9/VcInstall/vcCat.readme.txt +3 -0
  268. data/share/gccxml-0.9/VcInstall/vcPatch.exe +0 -0
  269. data/share/gccxml-0.9/VcInstall/vcPatch.readme.txt +27 -0
  270. data/share/gccxml-0.9/VcInstall/vc_helper +1 -0
  271. data/share/gccxml-0.9/gccxml_config +2 -0
  272. data/share/gccxml-0.9/gccxml_identify_compiler.cc +13 -0
  273. data/share/man/man1/gccxml.1 +246 -0
  274. metadata +331 -0
@@ -0,0 +1,786 @@
1
+ #ifndef __VALARRAY_H
2
+ #define __VALARRAY_H
3
+ #pragma option push -b -a8 -pc -Vx- -Ve- -w-inl -w-aus -w-sig
4
+ // -*- C++ -*-
5
+ #ifndef __RW_VALARRAY__
6
+ #define __RW_VALARRAY__
7
+
8
+ /***************************************************************************
9
+ *
10
+ * valaray - Declarations for the Standard Library valarray
11
+ *
12
+ ***************************************************************************
13
+ *
14
+ * Copyright (c) 1994-1999 Rogue Wave Software, Inc. All Rights Reserved.
15
+ *
16
+ * This computer software is owned by Rogue Wave Software, Inc. and is
17
+ * protected by U.S. copyright laws and other laws and by international
18
+ * treaties. This computer software is furnished by Rogue Wave Software,
19
+ * Inc. pursuant to a written license agreement and may be used, copied,
20
+ * transmitted, and stored only in accordance with the terms of such
21
+ * license and with the inclusion of the above copyright notice. This
22
+ * computer software or any other copies thereof may not be provided or
23
+ * otherwise made available to any other person.
24
+ *
25
+ * U.S. Government Restricted Rights. This computer software is provided
26
+ * with Restricted Rights. Use, duplication, or disclosure by the
27
+ * Government is subject to restrictions as set forth in subparagraph (c)
28
+ * (1) (ii) of The Rights in Technical Data and Computer Software clause
29
+ * at DFARS 252.227-7013 or subparagraphs (c) (1) and (2) of the
30
+ * Commercial Computer Software � Restricted Rights at 48 CFR 52.227-19,
31
+ * as applicable. Manufacturer is Rogue Wave Software, Inc., 5500
32
+ * Flatiron Parkway, Boulder, Colorado 80301 USA.
33
+ *
34
+ **************************************************************************/
35
+ #include <rw/valimp>
36
+
37
+ #ifndef _RWSTD_NO_NAMESPACE
38
+ namespace std {
39
+ #endif
40
+
41
+ // forward declarations
42
+ class _RWSTDExport slice;
43
+ template <class T> class slice_array;
44
+ class _RWSTDExport gslice;
45
+ template <class T> class gslice_array;
46
+ template <class T> class mask_array;
47
+ template <class T> class indirect_array;
48
+ /*************************************************************
49
+ * CLASS VALARRAY *
50
+ *************************************************************/
51
+
52
+ template <class T> class valarray {
53
+
54
+ public:
55
+
56
+ typedef T value_type;
57
+
58
+ // constructors
59
+
60
+ valarray( ) {;}
61
+
62
+ _EXPLICIT valarray(size_t size)
63
+ { memory_array._initial_size(size); }
64
+
65
+ valarray(const T& value, size_t size)
66
+ { memory_array._initialize_with_value(value,size); }
67
+
68
+ valarray(const T* pointer, size_t size)
69
+ { memory_array._initialize_with_array(pointer,size); }
70
+
71
+ valarray(const valarray<T>& array)
72
+ { memory_array._copy_memory_array(array._RW_get_memory_array()); }
73
+
74
+ valarray(const slice_array<T>&);
75
+ valarray(const gslice_array<T>&);
76
+ valarray(const mask_array<T>&);
77
+ valarray(const indirect_array<T>&);
78
+
79
+ // operator =
80
+
81
+ valarray<T>& operator= (const valarray<T>& array)
82
+ {
83
+ if ( this != &array )
84
+ memory_array._copy_memory_array(array._RW_get_memory_array());
85
+ return *this;
86
+ }
87
+
88
+ valarray<T>& operator= (const T&);
89
+ valarray<T>& operator= (const slice_array<T>&);
90
+ valarray<T>& operator= (const gslice_array<T>&);
91
+ valarray<T>& operator= (const mask_array<T>&);
92
+ valarray<T>& operator= (const indirect_array<T>&);
93
+
94
+ // operator[]
95
+
96
+ T operator[] (size_t ind) const
97
+ { return memory_array[ind]; }
98
+
99
+ T& operator[] (size_t ind)
100
+ { return memory_array[ind]; }
101
+
102
+ valarray<T> operator[](slice) const;
103
+ inline slice_array<T> operator[](slice);
104
+ valarray<T> operator[](const gslice&) const;
105
+ inline gslice_array<T> operator[](const gslice&);
106
+ valarray<T> operator[](const valarray<bool>&) const;
107
+ inline mask_array<T> operator[](const valarray<bool>&);
108
+ valarray<T> operator[](const valarray<size_t>&) const;
109
+ inline indirect_array<T> operator[](const valarray<size_t>&);
110
+
111
+ // unary operators
112
+
113
+ valarray<T> operator+() const;
114
+ valarray<T> operator-() const;
115
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
116
+ valarray<T> operator~() const;
117
+ valarray<bool> operator!() const;
118
+ #endif
119
+
120
+ // computed assignment
121
+
122
+ valarray<T>& operator*= (const valarray<T>& array);
123
+ valarray<T>& operator/= (const valarray<T>& array);
124
+ valarray<T>& operator+= (const valarray<T>& array);
125
+ valarray<T>& operator-= (const valarray<T>& array);
126
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
127
+ valarray<T>& operator%= (const valarray<T>& array);
128
+ valarray<T>& operator^= (const valarray<T>& array);
129
+ valarray<T>& operator&= (const valarray<T>& array);
130
+ valarray<T>& operator|= (const valarray<T>& array);
131
+ valarray<T>& operator<<= (const valarray<T>& array);
132
+ valarray<T>& operator>>= (const valarray<T>& array);
133
+ #endif
134
+ valarray<T>& operator*= (const T& val);
135
+ valarray<T>& operator/= (const T& val);
136
+ valarray<T>& operator%= (const T& val);
137
+ valarray<T>& operator+= (const T& val);
138
+ valarray<T>& operator-= (const T& val);
139
+ valarray<T>& operator^= (const T& val);
140
+ valarray<T>& operator&= (const T& val);
141
+ valarray<T>& operator|= (const T& val);
142
+ valarray<T>& operator<<= (const T& val);
143
+ valarray<T>& operator>>= (const T& val);
144
+ // others
145
+
146
+ size_t size() const { return memory_array._get_length(); }
147
+
148
+ T sum() const;
149
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
150
+ T min() const;
151
+ T max() const;
152
+ #endif
153
+
154
+ valarray<T> shift(int sh) const;
155
+ valarray<T> cshift(int sh) const;
156
+
157
+ valarray<T> apply(T func(T)) const;
158
+ valarray<T> apply(T func(const T&)) const;
159
+
160
+ void free()
161
+ { memory_array._RW_resize_without_copy(0); }
162
+
163
+ void resize(size_t sz, const T c= T() )
164
+ {
165
+ memory_array._RW_resize_without_copy(sz);
166
+ *this = c;
167
+ }
168
+
169
+ // implementation specific
170
+
171
+ const _RW_IMP_SPACE(_RW_array<T>)& _RW_get_memory_array( ) const
172
+ { return memory_array; }
173
+
174
+ _RW_IMP_SPACE(_RW_array<T>)* _RW_get_memory_array_adr( )
175
+ { return &memory_array; }
176
+
177
+ valarray(_RW_IMP_SPACE(_RW_temporary<T>)* tmp)
178
+ {
179
+ memory_array._replace(tmp->store_adr,tmp->length);
180
+ delete tmp;
181
+ }
182
+
183
+ private:
184
+
185
+ _RW_IMP_SPACE(_RW_array<T>) memory_array;
186
+
187
+ };
188
+
189
+ /*
190
+ *
191
+ * VALARRAY NON MEMBER FUNCTIONS
192
+ *
193
+ */
194
+
195
+ // binary operators
196
+
197
+ template<class T>
198
+ valarray<T> operator* (const valarray<T>& , const valarray<T>& );
199
+
200
+ template<class T>
201
+ valarray<T> operator/ (const valarray<T>& , const valarray<T>& );
202
+
203
+ template<class T>
204
+ valarray<T> operator% (const valarray<T>&, const valarray<T>&);
205
+
206
+ template<class T>
207
+ valarray<T> operator+ (const valarray<T>& , const valarray<T>& );
208
+
209
+ template<class T>
210
+ valarray<T> operator- (const valarray<T>& , const valarray<T>& );
211
+
212
+ template<class T>
213
+ valarray<T> operator^ (const valarray<T>&, const valarray<T>&);
214
+
215
+ template<class T>
216
+ valarray<T> operator& (const valarray<T>&, const valarray<T>&);
217
+
218
+ template<class T>
219
+ valarray<T> operator| (const valarray<T>&, const valarray<T>&);
220
+
221
+ template<class T>
222
+ valarray<T> operator<< (const valarray<T>&, const valarray<T>&);
223
+
224
+ template<class T>
225
+ valarray<T> operator>> (const valarray<T>&, const valarray<T>&);
226
+
227
+ template<class T>
228
+ valarray<bool> operator&& (const valarray<T>&, const valarray<T>&);
229
+
230
+ template<class T>
231
+ valarray<bool> operator|| (const valarray<T>&, const valarray<T>&);
232
+
233
+ // with non array second param
234
+
235
+ template<class T>
236
+ valarray<T> operator* (const valarray<T>& , const T& );
237
+
238
+ template<class T>
239
+ valarray<T> operator/ (const valarray<T>& , const T& );
240
+
241
+ template<class T>
242
+ valarray<T> operator% (const valarray<T>&, const T&);
243
+
244
+ template<class T>
245
+ valarray<T> operator+ (const valarray<T>& , const T& );
246
+
247
+ template<class T>
248
+ valarray<T> operator- (const valarray<T>& , const T& );
249
+
250
+ template<class T>
251
+ valarray<T> operator^ (const valarray<T>&, const T&);
252
+
253
+ template<class T>
254
+ valarray<T> operator& (const valarray<T>&, const T&);
255
+
256
+ template<class T>
257
+ valarray<T> operator| (const valarray<T>&, const T&);
258
+
259
+ template<class T>
260
+ valarray<T> operator<< (const valarray<T>&, const T&);
261
+
262
+ template<class T>
263
+ valarray<T> operator>> (const valarray<T>&, const T&);
264
+
265
+ template<class T>
266
+ valarray<bool> operator&& (const valarray<T>&, const T&);
267
+
268
+ template<class T>
269
+ valarray<bool> operator|| (const valarray<T>&, const T&);
270
+ // with non array first param
271
+
272
+ template<class T>
273
+ valarray<T> operator* (const T& , const valarray<T>& );
274
+
275
+ template<class T>
276
+ valarray<T> operator/ (const T& , const valarray<T>& );
277
+
278
+ template<class T>
279
+ valarray<T> operator% (const T&, const valarray<T>&);
280
+
281
+ template<class T>
282
+ valarray<T> operator+ (const T& , const valarray<T>& );
283
+
284
+ template<class T>
285
+ valarray<T> operator- (const T& , const valarray<T>& );
286
+
287
+ template<class T>
288
+ valarray<T> operator^ (const T&, const valarray<T>&);
289
+
290
+ template<class T>
291
+ valarray<T> operator& (const T&, const valarray<T>&);
292
+
293
+ template<class T>
294
+ valarray<T> operator| (const T&, const valarray<T>&);
295
+
296
+ template<class T>
297
+ valarray<T> operator<< (const T&, const valarray<T>&);
298
+
299
+ template<class T>
300
+ valarray<T> operator>> (const T&, const valarray<T>&);
301
+
302
+ template<class T>
303
+ valarray<bool> operator&& (const T&, const valarray<T>&);
304
+
305
+ template<class T>
306
+ valarray<bool> operator|| (const T&, const valarray<T>&);
307
+
308
+ // comparison operators
309
+
310
+ template<class T>
311
+ valarray<bool> operator== (const valarray<T>& , const valarray<T>& );
312
+
313
+ template<class T>
314
+ valarray<bool> operator!= (const valarray<T>& , const valarray<T>& );
315
+
316
+ template<class T>
317
+ valarray<bool> operator< (const valarray<T>& , const valarray<T>& );
318
+
319
+ template<class T>
320
+ valarray<bool> operator> (const valarray<T>& , const valarray<T>& );
321
+
322
+ template<class T>
323
+ valarray<bool> operator<= (const valarray<T>& , const valarray<T>& );
324
+
325
+ template<class T>
326
+ valarray<bool> operator>= (const valarray<T>& , const valarray<T>& );
327
+
328
+ // comparison operators, non valarray second param
329
+
330
+ template<class T>
331
+ valarray<bool> operator== (const valarray<T>& , const T& );
332
+
333
+ template<class T>
334
+ valarray<bool> operator!= (const valarray<T>& , const T& );
335
+
336
+ template<class T>
337
+ valarray<bool> operator< (const valarray<T>& , const T& );
338
+
339
+ template<class T>
340
+ valarray<bool> operator> (const valarray<T>& , const T& );
341
+
342
+ template<class T>
343
+ valarray<bool> operator<= (const valarray<T>& , const T& );
344
+
345
+ template<class T>
346
+ valarray<bool> operator>= (const valarray<T>& , const T& );
347
+
348
+ // comparison operators, non valarray first param
349
+
350
+ template<class T>
351
+ valarray<bool> operator== (const T& , const valarray<T>& );
352
+
353
+ template<class T>
354
+ valarray<bool> operator!= (const T& , const valarray<T>& );
355
+
356
+ template<class T>
357
+ valarray<bool> operator< (const T& , const valarray<T>& );
358
+
359
+ template<class T>
360
+ valarray<bool> operator> (const T& , const valarray<T>& );
361
+
362
+ template<class T>
363
+ valarray<bool> operator<= (const T& , const valarray<T>& );
364
+
365
+ template<class T>
366
+ valarray<bool> operator>= (const T& , const valarray<T>& );
367
+
368
+
369
+ // transcendentals
370
+
371
+ template<class T>
372
+ valarray<T> abs(const valarray<T>& );
373
+
374
+ template<class T>
375
+ valarray<T> acos(const valarray<T>& );
376
+
377
+ template<class T>
378
+ valarray<T> asin(const valarray<T>& );
379
+
380
+ template<class T>
381
+ valarray<T> atan(const valarray<T>& );
382
+
383
+ template<class T>
384
+ valarray<T> cos(const valarray<T>& );
385
+
386
+ template<class T>
387
+ valarray<T> cosh(const valarray<T>& );
388
+
389
+ template<class T>
390
+ valarray<T> exp(const valarray<T>& );
391
+
392
+ template<class T>
393
+ valarray<T> log(const valarray<T>& );
394
+
395
+ template<class T>
396
+ valarray<T> log10(const valarray<T>& );
397
+
398
+ template<class T>
399
+ valarray<T> sinh(const valarray<T>& );
400
+
401
+ template<class T>
402
+ valarray<T> sin(const valarray<T>& );
403
+
404
+ template<class T>
405
+ valarray<T> sqrt(const valarray<T>& );
406
+
407
+ template<class T>
408
+ valarray<T> tan(const valarray<T>& );
409
+
410
+ template<class T>
411
+ valarray<T> tanh(const valarray<T>& );
412
+
413
+ template<class T>
414
+ valarray<T> atan2(const valarray<T>& , const valarray<T>& );
415
+
416
+ template<class T>
417
+ valarray<T> atan2(const valarray<T>& , const T& );
418
+
419
+ template<class T>
420
+ valarray<T> atan2(const T& , const valarray<T>& );
421
+
422
+ template<class T>
423
+ valarray<T> pow(const valarray<T>& , const valarray<T>& );
424
+
425
+ template<class T>
426
+ valarray<T> pow(const valarray<T>& , const T& );
427
+
428
+ template<class T>
429
+ valarray<T> pow(const T& , const valarray<T>& );
430
+
431
+ // Global min and max template fonction
432
+ // for compiler that try to instantiate all the member function
433
+
434
+ #ifdef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
435
+ template <class T> T max(const valarray<T>&);
436
+ template <class T> T min(const valarray<T>&);
437
+ #endif
438
+
439
+ /****************************************************************
440
+ * SLICE AND SLICE_ARRAY *
441
+ ****************************************************************/
442
+
443
+ class _RWSTDExport slice {
444
+
445
+ public:
446
+
447
+ slice()
448
+ : start_(0), length_(0), stride_(0)
449
+ {;}
450
+ slice(size_t start, size_t length, size_t stride)
451
+ : start_(start)
452
+ , length_(length)
453
+ , stride_(stride)
454
+ {;}
455
+
456
+ slice(const slice& sl)
457
+ :start_(sl.start())
458
+ ,length_(sl.size())
459
+ ,stride_(sl.stride())
460
+ {;}
461
+
462
+ size_t start() const { return start_; }
463
+ size_t size() const { return length_; }
464
+ size_t stride() const { return stride_; }
465
+
466
+ private:
467
+
468
+ size_t start_;
469
+ size_t length_;
470
+ size_t stride_;
471
+
472
+ };
473
+
474
+ template <class T> class slice_array {
475
+
476
+ public:
477
+
478
+ typedef T value_type;
479
+
480
+ slice_array( _RW_IMP_SPACE(_RW_array<T>)* pt,const slice& a )
481
+ :ref_mem_array(pt)
482
+ ,slice_(a)
483
+ {;}
484
+
485
+ slice_array(const slice_array<T>& sl)
486
+ :ref_mem_array(sl.get_ref_mem_array())
487
+ ,slice_(sl.get_slice())
488
+ {;}
489
+
490
+ _RW_IMP_SPACE(_RW_array<T>)* get_ref_mem_array() const { return ref_mem_array; }
491
+ slice get_slice() const { return slice_; }
492
+
493
+ // assignment
494
+
495
+ void operator= (const valarray<T>& ) const;
496
+ void operator= (const T&) const;
497
+
498
+ // computed assignment
499
+
500
+ void operator*= (const valarray<T>& ) const;
501
+ void operator/= (const valarray<T>& ) const;
502
+ void operator+= (const valarray<T>& ) const;
503
+ void operator-= (const valarray<T>& ) const;
504
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
505
+ void operator%= (const valarray<T>& ) const;
506
+ void operator^= (const valarray<T>& ) const;
507
+ void operator&= (const valarray<T>& ) const;
508
+ void operator|= (const valarray<T>& ) const;
509
+ void operator<<= (const valarray<T>& ) const;
510
+ void operator>>= (const valarray<T>& ) const;
511
+ #endif
512
+
513
+ private:
514
+
515
+ slice_array();
516
+ slice_array<T>& operator= (const slice_array<T>&);
517
+
518
+ _RW_IMP_SPACE(_RW_array<T>)* ref_mem_array;
519
+ slice slice_;
520
+
521
+ };
522
+ /****************************************************************
523
+ * GSLICE AND GSLICE_ARRAY *
524
+ ****************************************************************/
525
+
526
+ class _RWSTDExport gslice {
527
+
528
+ public:
529
+
530
+ gslice()
531
+ : start_(0)
532
+ , reset_(true)
533
+ {;}
534
+
535
+
536
+ gslice(size_t s, const valarray<size_t>& l, const valarray<size_t>& d)
537
+ : start_(s)
538
+ , length_(l)
539
+ , stride_(d)
540
+ , reset_(true)
541
+ , r_length_((size_t)0,l.size())
542
+ {;}
543
+
544
+ gslice(const gslice& sl)
545
+ : start_(sl.start())
546
+ , length_(sl.size())
547
+ , stride_(sl.stride())
548
+ , reset_(true)
549
+ , r_length_((size_t)0,sl.size().size())
550
+ {;}
551
+
552
+ size_t start() const { return start_; }
553
+ valarray<size_t> size() const { return length_; }
554
+ valarray<size_t> stride() const { return stride_; }
555
+
556
+ size_t next_ind();
557
+ inline size_t is_reseted() const { return reset_; }
558
+ size_t ind_max() const;
559
+ size_t ind_numb() const;
560
+
561
+ private:
562
+
563
+ size_t start_;
564
+ valarray<size_t> length_;
565
+ valarray<size_t> stride_;
566
+
567
+ bool reset_;
568
+ valarray<size_t> r_length_;
569
+
570
+ };
571
+ // class gslice_array
572
+
573
+ template <class T> class gslice_array {
574
+ public:
575
+
576
+ typedef T value_type;
577
+
578
+ gslice_array( _RW_IMP_SPACE(_RW_array<T>)* pt,const gslice& a )
579
+ :ref_mem_array(pt)
580
+ ,slice_(a)
581
+ {;}
582
+
583
+ gslice_array(const gslice_array<T>& sl)
584
+ :ref_mem_array(sl.get_ref_mem_array())
585
+ ,slice_(sl.get_slice())
586
+ {;}
587
+
588
+ _RW_IMP_SPACE(_RW_array<T>)* get_ref_mem_array() const { return ref_mem_array; }
589
+ gslice get_slice() const { return slice_; }
590
+
591
+ // assignment
592
+
593
+ void operator= (const valarray<T>& ) const;
594
+ void operator= (const T&) const;
595
+
596
+ // computed assignment
597
+
598
+ void operator*= (const valarray<T>& ) const;
599
+ void operator/= (const valarray<T>& ) const;
600
+ void operator+= (const valarray<T>& ) const;
601
+ void operator-= (const valarray<T>& ) const;
602
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
603
+ void operator%= (const valarray<T>& ) const;
604
+ void operator^= (const valarray<T>& ) const;
605
+ void operator&= (const valarray<T>& ) const;
606
+ void operator|= (const valarray<T>& ) const;
607
+ void operator<<= (const valarray<T>& ) const;
608
+ void operator>>= (const valarray<T>& ) const;
609
+ #endif
610
+
611
+ private:
612
+
613
+ gslice_array();
614
+ gslice_array<T>& operator= (const gslice_array<T>&);
615
+
616
+ _RW_IMP_SPACE(_RW_array<T>)* ref_mem_array;
617
+ gslice slice_;
618
+
619
+ };
620
+
621
+
622
+ /****************************************************************
623
+ * MASK_ARRAY *
624
+ ****************************************************************/
625
+ // class mask_array
626
+
627
+ template <class T> class mask_array {
628
+ public:
629
+
630
+ typedef T value_type;
631
+
632
+ mask_array( _RW_IMP_SPACE(_RW_array<T>)* pt,const valarray<bool>& a )
633
+ :ref_mem_array(pt)
634
+ ,array(a)
635
+ {;}
636
+
637
+ mask_array(const mask_array<T>& sl)
638
+ :ref_mem_array(sl.get_ref_mem_array())
639
+ ,array(sl.get_array())
640
+ {;}
641
+
642
+ _RW_IMP_SPACE(_RW_array<T>)* get_ref_mem_array() const { return ref_mem_array; }
643
+ valarray<bool> get_array() const { return array; }
644
+ valarray<bool>* get_array_pt() { return &array; }
645
+
646
+ // assignment
647
+
648
+ void operator= (const valarray<T>& ) const;
649
+ void operator= (const T&) const;
650
+
651
+ // computed assignment
652
+
653
+ void operator*= (const valarray<T>& ) const;
654
+ void operator/= (const valarray<T>& ) const;
655
+ void operator+= (const valarray<T>& ) const;
656
+ void operator-= (const valarray<T>& ) const;
657
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
658
+ void operator%= (const valarray<T>& ) const;
659
+ void operator^= (const valarray<T>& ) const;
660
+ void operator&= (const valarray<T>& ) const;
661
+ void operator|= (const valarray<T>& ) const;
662
+ void operator<<= (const valarray<T>& ) const;
663
+ void operator>>= (const valarray<T>& ) const;
664
+ #endif
665
+
666
+ private:
667
+
668
+ mask_array();
669
+ mask_array<T>& operator= (const mask_array<T>&);
670
+
671
+ _RW_IMP_SPACE(_RW_array<T>)* ref_mem_array;
672
+ valarray<bool> array;
673
+
674
+ };
675
+
676
+
677
+ /****************************************************************
678
+ * INDIRECT_ARRAY *
679
+ ****************************************************************/
680
+ // class indirect_array
681
+
682
+ template <class T> class indirect_array {
683
+ public:
684
+
685
+ typedef T value_type;
686
+
687
+ indirect_array( _RW_IMP_SPACE(_RW_array<T>)* pt,const valarray<size_t>& a )
688
+ :ref_mem_array(pt)
689
+ ,array(a)
690
+ {;}
691
+
692
+ indirect_array(const indirect_array<T>& sl)
693
+ :ref_mem_array(sl.get_ref_mem_array())
694
+ ,array(sl.get_array())
695
+ {;}
696
+
697
+ _RW_IMP_SPACE(_RW_array<T>)* get_ref_mem_array() const { return ref_mem_array; }
698
+ valarray<size_t> get_array() const { return array; }
699
+ valarray<size_t>* get_array_pt() { return &array; }
700
+
701
+ // assignment
702
+
703
+ void operator= (const valarray<T>& ) const;
704
+ void operator= (const T& ) const;
705
+
706
+ // computed assignment
707
+
708
+ void operator*= (const valarray<T>& ) const;
709
+ void operator/= (const valarray<T>& ) const;
710
+ void operator+= (const valarray<T>& ) const;
711
+ void operator-= (const valarray<T>& ) const;
712
+ #ifndef _RWSTD_NO_ONLY_NEEDED_INSTANTIATION
713
+ void operator%= (const valarray<T>& ) const;
714
+ void operator^= (const valarray<T>& ) const;
715
+ void operator&= (const valarray<T>& ) const;
716
+ void operator|= (const valarray<T>& ) const;
717
+ void operator<<= (const valarray<T>& ) const;
718
+ void operator>>= (const valarray<T>& ) const;
719
+ #endif
720
+
721
+ private:
722
+
723
+ indirect_array();
724
+ indirect_array<T>& operator= (const indirect_array<T>&);
725
+
726
+ _RW_IMP_SPACE(_RW_array<T>)* ref_mem_array;
727
+ valarray<size_t> array;
728
+
729
+ };
730
+
731
+ /*
732
+ * VALARRAY INLINE MEMBER FUNCTIONS
733
+ */
734
+ template <class T>
735
+ inline valarray<T>& valarray<T>::operator=(const T& value)
736
+ {
737
+ memory_array._initialize_with_value(value, size());
738
+ return *this;
739
+ }
740
+
741
+ // operator[] for slice
742
+
743
+ template <class T>
744
+ inline slice_array<T> valarray<T>::operator[](slice sl)
745
+ {
746
+ return slice_array<T>(&memory_array, sl);
747
+ }
748
+
749
+ // operator[] for gslice
750
+
751
+
752
+ template <class T>
753
+ inline gslice_array<T> valarray<T>::operator[](const gslice& sl)
754
+ {
755
+ return gslice_array<T>(&memory_array, sl);
756
+ }
757
+ // operator[] for valarray[valarray<bool>] used with mask_array
758
+
759
+
760
+ template <class T>
761
+ inline mask_array<T> valarray<T>::operator[](const valarray<bool>& array)
762
+ {
763
+ return mask_array<T>(&memory_array, array);
764
+ }
765
+ // operator[] for valarray[valarray<size_t>] used with indirect_array
766
+ template <class T>
767
+ inline indirect_array<T> valarray<T>::operator[](const valarray<size_t>& array)
768
+ {
769
+ return indirect_array<T>(&memory_array, array);
770
+ }
771
+
772
+ #ifndef _RWSTD_NO_NAMESPACE
773
+ }
774
+ #endif
775
+
776
+ #ifdef _RWSTD_NO_TEMPLATE_REPOSITORY
777
+ #include <valarray.cc>
778
+ #endif
779
+ #endif /* __VALARRAY__ */
780
+
781
+ #ifndef __USING_STD_NAMES__
782
+ using namespace std;
783
+ #endif
784
+
785
+ #pragma option pop
786
+ #endif /* __VALARRAY_H */