mathematical 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (239) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +12 -0
  3. data/ext/mathematical/extconf.rb +12 -2
  4. data/ext/mathematical/{itex2MML.h → itexToMML/itex2MML.h} +0 -0
  5. data/ext/mathematical/{lex.yy.c → itexToMML/lex.yy.c} +0 -0
  6. data/ext/mathematical/{y.tab.c → itexToMML/y.tab.c} +0 -0
  7. data/ext/mathematical/{y.tab.h → itexToMML/y.tab.h} +0 -0
  8. data/ext/mathematical/lasem/itex2mml/itex2MML.h +63 -0
  9. data/ext/mathematical/{lasemrender.c → lasem/src/lasemrender.c} +27 -21
  10. data/ext/mathematical/{lsm.c → lasem/src/lsm.c} +0 -0
  11. data/ext/mathematical/{lsm.h → lasem/src/lsm.h} +0 -0
  12. data/ext/mathematical/{lsmattributes.c → lasem/src/lsmattributes.c} +0 -0
  13. data/ext/mathematical/{lsmattributes.h → lasem/src/lsmattributes.h} +0 -0
  14. data/ext/mathematical/{lsmcairo.c → lasem/src/lsmcairo.c} +0 -0
  15. data/ext/mathematical/{lsmcairo.h → lasem/src/lsmcairo.h} +0 -0
  16. data/ext/mathematical/{lsmdebug.c → lasem/src/lsmdebug.c} +2 -0
  17. data/ext/mathematical/{lsmdebug.h → lasem/src/lsmdebug.h} +3 -3
  18. data/ext/mathematical/{lsmdom.h → lasem/src/lsmdom.h} +0 -0
  19. data/ext/mathematical/{lsmdomcharacterdata.c → lasem/src/lsmdomcharacterdata.c} +0 -0
  20. data/ext/mathematical/{lsmdomcharacterdata.h → lasem/src/lsmdomcharacterdata.h} +0 -0
  21. data/ext/mathematical/{lsmdomdocument.c → lasem/src/lsmdomdocument.c} +0 -0
  22. data/ext/mathematical/{lsmdomdocument.h → lasem/src/lsmdomdocument.h} +0 -0
  23. data/ext/mathematical/{lsmdomdocumentfragment.c → lasem/src/lsmdomdocumentfragment.c} +0 -0
  24. data/ext/mathematical/{lsmdomdocumentfragment.h → lasem/src/lsmdomdocumentfragment.h} +0 -0
  25. data/ext/mathematical/{lsmdomelement.c → lasem/src/lsmdomelement.c} +0 -0
  26. data/ext/mathematical/{lsmdomelement.h → lasem/src/lsmdomelement.h} +0 -0
  27. data/ext/mathematical/{lsmdomentities.c → lasem/src/lsmdomentities.c} +0 -0
  28. data/ext/mathematical/{lsmdomentities.h → lasem/src/lsmdomentities.h} +0 -0
  29. data/ext/mathematical/{lsmdomimplementation.c → lasem/src/lsmdomimplementation.c} +0 -0
  30. data/ext/mathematical/{lsmdomimplementation.h → lasem/src/lsmdomimplementation.h} +0 -0
  31. data/ext/mathematical/{lsmdomnamednodemap.c → lasem/src/lsmdomnamednodemap.c} +0 -0
  32. data/ext/mathematical/{lsmdomnamednodemap.h → lasem/src/lsmdomnamednodemap.h} +0 -0
  33. data/ext/mathematical/{lsmdomnode.c → lasem/src/lsmdomnode.c} +0 -0
  34. data/ext/mathematical/{lsmdomnode.h → lasem/src/lsmdomnode.h} +0 -0
  35. data/ext/mathematical/{lsmdomnodelist.c → lasem/src/lsmdomnodelist.c} +0 -0
  36. data/ext/mathematical/{lsmdomnodelist.h → lasem/src/lsmdomnodelist.h} +0 -0
  37. data/ext/mathematical/{lsmdomparser.c → lasem/src/lsmdomparser.c} +78 -16
  38. data/ext/mathematical/{lsmdomparser.h → lasem/src/lsmdomparser.h} +7 -7
  39. data/ext/mathematical/{lsmdomtext.c → lasem/src/lsmdomtext.c} +0 -0
  40. data/ext/mathematical/{lsmdomtext.h → lasem/src/lsmdomtext.h} +0 -0
  41. data/ext/mathematical/{lsmdomtypes.h → lasem/src/lsmdomtypes.h} +0 -0
  42. data/ext/mathematical/{lsmdomview.c → lasem/src/lsmdomview.c} +1 -0
  43. data/ext/mathematical/{lsmdomview.h → lasem/src/lsmdomview.h} +0 -0
  44. data/ext/mathematical/{lsmitex.c → lasem/src/lsmitex.c} +4 -4
  45. data/ext/mathematical/{lsmitex.h → lasem/src/lsmitex.h} +1 -1
  46. data/ext/mathematical/{lsmmathml.h → lasem/src/lsmmathml.h} +0 -0
  47. data/ext/mathematical/{lsmmathmlactionelement.c → lasem/src/lsmmathmlactionelement.c} +0 -0
  48. data/ext/mathematical/{lsmmathmlactionelement.h → lasem/src/lsmmathmlactionelement.h} +0 -0
  49. data/ext/mathematical/{lsmmathmlaligngroupelement.c → lasem/src/lsmmathmlaligngroupelement.c} +0 -0
  50. data/ext/mathematical/{lsmmathmlaligngroupelement.h → lasem/src/lsmmathmlaligngroupelement.h} +0 -0
  51. data/ext/mathematical/{lsmmathmlalignmarkelement.c → lasem/src/lsmmathmlalignmarkelement.c} +0 -0
  52. data/ext/mathematical/{lsmmathmlalignmarkelement.h → lasem/src/lsmmathmlalignmarkelement.h} +0 -0
  53. data/ext/mathematical/{lsmmathmlattributes.c → lasem/src/lsmmathmlattributes.c} +0 -0
  54. data/ext/mathematical/{lsmmathmlattributes.h → lasem/src/lsmmathmlattributes.h} +0 -0
  55. data/ext/mathematical/{lsmmathmldocument.c → lasem/src/lsmmathmldocument.c} +2 -2
  56. data/ext/mathematical/{lsmmathmldocument.h → lasem/src/lsmmathmldocument.h} +1 -1
  57. data/ext/mathematical/{lsmmathmlelement.c → lasem/src/lsmmathmlelement.c} +0 -0
  58. data/ext/mathematical/{lsmmathmlelement.h → lasem/src/lsmmathmlelement.h} +0 -0
  59. data/ext/mathematical/{lsmmathmlenums.c → lasem/src/lsmmathmlenums.c} +0 -0
  60. data/ext/mathematical/{lsmmathmlenums.h → lasem/src/lsmmathmlenums.h} +0 -0
  61. data/ext/mathematical/{lsmmathmlerrorelement.c → lasem/src/lsmmathmlerrorelement.c} +0 -0
  62. data/ext/mathematical/{lsmmathmlerrorelement.h → lasem/src/lsmmathmlerrorelement.h} +0 -0
  63. data/ext/mathematical/{lsmmathmlfencedelement.c → lasem/src/lsmmathmlfencedelement.c} +0 -0
  64. data/ext/mathematical/{lsmmathmlfencedelement.h → lasem/src/lsmmathmlfencedelement.h} +0 -0
  65. data/ext/mathematical/{lsmmathmlfractionelement.c → lasem/src/lsmmathmlfractionelement.c} +0 -0
  66. data/ext/mathematical/{lsmmathmlfractionelement.h → lasem/src/lsmmathmlfractionelement.h} +0 -0
  67. data/ext/mathematical/{lsmmathmlglyphtableams.c → lasem/src/lsmmathmlglyphtableams.c} +0 -0
  68. data/ext/mathematical/{lsmmathmlglyphtableams.h → lasem/src/lsmmathmlglyphtableams.h} +0 -0
  69. data/ext/mathematical/{lsmmathmlitexelement.c → lasem/src/lsmmathmlitexelement.c} +0 -0
  70. data/ext/mathematical/{lsmmathmlitexelement.h → lasem/src/lsmmathmlitexelement.h} +0 -0
  71. data/ext/mathematical/{lsmmathmllayoututils.c → lasem/src/lsmmathmllayoututils.c} +0 -0
  72. data/ext/mathematical/{lsmmathmllayoututils.h → lasem/src/lsmmathmllayoututils.h} +0 -0
  73. data/ext/mathematical/{lsmmathmlmathelement.c → lasem/src/lsmmathmlmathelement.c} +0 -0
  74. data/ext/mathematical/{lsmmathmlmathelement.h → lasem/src/lsmmathmlmathelement.h} +0 -0
  75. data/ext/mathematical/{lsmmathmloperatordictionary.c → lasem/src/lsmmathmloperatordictionary.c} +0 -0
  76. data/ext/mathematical/{lsmmathmloperatordictionary.h → lasem/src/lsmmathmloperatordictionary.h} +0 -0
  77. data/ext/mathematical/{lsmmathmloperatorelement.c → lasem/src/lsmmathmloperatorelement.c} +0 -0
  78. data/ext/mathematical/{lsmmathmloperatorelement.h → lasem/src/lsmmathmloperatorelement.h} +0 -0
  79. data/ext/mathematical/{lsmmathmlpaddedelement.c → lasem/src/lsmmathmlpaddedelement.c} +0 -0
  80. data/ext/mathematical/{lsmmathmlpaddedelement.h → lasem/src/lsmmathmlpaddedelement.h} +0 -0
  81. data/ext/mathematical/{lsmmathmlphantomelement.c → lasem/src/lsmmathmlphantomelement.c} +0 -0
  82. data/ext/mathematical/{lsmmathmlphantomelement.h → lasem/src/lsmmathmlphantomelement.h} +0 -0
  83. data/ext/mathematical/{lsmmathmlpresentationcontainer.c → lasem/src/lsmmathmlpresentationcontainer.c} +0 -0
  84. data/ext/mathematical/{lsmmathmlpresentationcontainer.h → lasem/src/lsmmathmlpresentationcontainer.h} +0 -0
  85. data/ext/mathematical/{lsmmathmlpresentationtoken.c → lasem/src/lsmmathmlpresentationtoken.c} +0 -0
  86. data/ext/mathematical/{lsmmathmlpresentationtoken.h → lasem/src/lsmmathmlpresentationtoken.h} +0 -0
  87. data/ext/mathematical/{lsmmathmlradicalelement.c → lasem/src/lsmmathmlradicalelement.c} +0 -0
  88. data/ext/mathematical/{lsmmathmlradicalelement.h → lasem/src/lsmmathmlradicalelement.h} +0 -0
  89. data/ext/mathematical/{lsmmathmlrowelement.c → lasem/src/lsmmathmlrowelement.c} +0 -0
  90. data/ext/mathematical/{lsmmathmlrowelement.h → lasem/src/lsmmathmlrowelement.h} +0 -0
  91. data/ext/mathematical/{lsmmathmlscriptelement.c → lasem/src/lsmmathmlscriptelement.c} +0 -0
  92. data/ext/mathematical/{lsmmathmlscriptelement.h → lasem/src/lsmmathmlscriptelement.h} +0 -0
  93. data/ext/mathematical/{lsmmathmlsemanticselement.c → lasem/src/lsmmathmlsemanticselement.c} +0 -0
  94. data/ext/mathematical/{lsmmathmlsemanticselement.h → lasem/src/lsmmathmlsemanticselement.h} +0 -0
  95. data/ext/mathematical/{lsmmathmlspaceelement.c → lasem/src/lsmmathmlspaceelement.c} +0 -0
  96. data/ext/mathematical/{lsmmathmlspaceelement.h → lasem/src/lsmmathmlspaceelement.h} +0 -0
  97. data/ext/mathematical/{lsmmathmlstringelement.c → lasem/src/lsmmathmlstringelement.c} +0 -0
  98. data/ext/mathematical/{lsmmathmlstringelement.h → lasem/src/lsmmathmlstringelement.h} +0 -0
  99. data/ext/mathematical/{lsmmathmlstyle.c → lasem/src/lsmmathmlstyle.c} +0 -0
  100. data/ext/mathematical/{lsmmathmlstyle.h → lasem/src/lsmmathmlstyle.h} +0 -0
  101. data/ext/mathematical/{lsmmathmlstyleelement.c → lasem/src/lsmmathmlstyleelement.c} +0 -0
  102. data/ext/mathematical/{lsmmathmlstyleelement.h → lasem/src/lsmmathmlstyleelement.h} +0 -0
  103. data/ext/mathematical/{lsmmathmltablecellelement.c → lasem/src/lsmmathmltablecellelement.c} +0 -0
  104. data/ext/mathematical/{lsmmathmltablecellelement.h → lasem/src/lsmmathmltablecellelement.h} +0 -0
  105. data/ext/mathematical/{lsmmathmltableelement.c → lasem/src/lsmmathmltableelement.c} +0 -0
  106. data/ext/mathematical/{lsmmathmltableelement.h → lasem/src/lsmmathmltableelement.h} +0 -0
  107. data/ext/mathematical/{lsmmathmltablerowelement.c → lasem/src/lsmmathmltablerowelement.c} +0 -0
  108. data/ext/mathematical/{lsmmathmltablerowelement.h → lasem/src/lsmmathmltablerowelement.h} +0 -0
  109. data/ext/mathematical/{lsmmathmltraits.c → lasem/src/lsmmathmltraits.c} +0 -0
  110. data/ext/mathematical/{lsmmathmltraits.h → lasem/src/lsmmathmltraits.h} +0 -0
  111. data/ext/mathematical/{lsmmathmltypes.h → lasem/src/lsmmathmltypes.h} +0 -0
  112. data/ext/mathematical/{lsmmathmlunderoverelement.c → lasem/src/lsmmathmlunderoverelement.c} +0 -0
  113. data/ext/mathematical/{lsmmathmlunderoverelement.h → lasem/src/lsmmathmlunderoverelement.h} +0 -0
  114. data/ext/mathematical/{lsmmathmlutils.c → lasem/src/lsmmathmlutils.c} +0 -0
  115. data/ext/mathematical/{lsmmathmlutils.h → lasem/src/lsmmathmlutils.h} +0 -0
  116. data/ext/mathematical/{lsmmathmlview.c → lasem/src/lsmmathmlview.c} +0 -0
  117. data/ext/mathematical/{lsmmathmlview.h → lasem/src/lsmmathmlview.h} +0 -0
  118. data/ext/mathematical/{lsmproperties.c → lasem/src/lsmproperties.c} +0 -0
  119. data/ext/mathematical/{lsmproperties.h → lasem/src/lsmproperties.h} +0 -0
  120. data/ext/mathematical/{lsmstr.c → lasem/src/lsmstr.c} +0 -0
  121. data/ext/mathematical/{lsmstr.h → lasem/src/lsmstr.h} +0 -0
  122. data/ext/mathematical/{lsmsvg.h → lasem/src/lsmsvg.h} +0 -0
  123. data/ext/mathematical/{lsmsvgaelement.c → lasem/src/lsmsvgaelement.c} +0 -0
  124. data/ext/mathematical/{lsmsvgaelement.h → lasem/src/lsmsvgaelement.h} +0 -0
  125. data/ext/mathematical/{lsmsvgattributes.h → lasem/src/lsmsvgattributes.h} +0 -0
  126. data/ext/mathematical/{lsmsvgcircleelement.c → lasem/src/lsmsvgcircleelement.c} +0 -0
  127. data/ext/mathematical/{lsmsvgcircleelement.h → lasem/src/lsmsvgcircleelement.h} +0 -0
  128. data/ext/mathematical/{lsmsvgclippathelement.c → lasem/src/lsmsvgclippathelement.c} +0 -0
  129. data/ext/mathematical/{lsmsvgclippathelement.h → lasem/src/lsmsvgclippathelement.h} +0 -0
  130. data/ext/mathematical/{lsmsvgcolors.c → lasem/src/lsmsvgcolors.c} +0 -0
  131. data/ext/mathematical/{lsmsvgcolors.h → lasem/src/lsmsvgcolors.h} +0 -0
  132. data/ext/mathematical/{lsmsvgdefselement.c → lasem/src/lsmsvgdefselement.c} +0 -0
  133. data/ext/mathematical/{lsmsvgdefselement.h → lasem/src/lsmsvgdefselement.h} +0 -0
  134. data/ext/mathematical/{lsmsvgdocument.c → lasem/src/lsmsvgdocument.c} +0 -0
  135. data/ext/mathematical/{lsmsvgdocument.h → lasem/src/lsmsvgdocument.h} +0 -0
  136. data/ext/mathematical/{lsmsvgelement.c → lasem/src/lsmsvgelement.c} +0 -0
  137. data/ext/mathematical/{lsmsvgelement.h → lasem/src/lsmsvgelement.h} +0 -0
  138. data/ext/mathematical/{lsmsvgellipseelement.c → lasem/src/lsmsvgellipseelement.c} +0 -0
  139. data/ext/mathematical/{lsmsvgellipseelement.h → lasem/src/lsmsvgellipseelement.h} +0 -0
  140. data/ext/mathematical/{lsmsvgenums.c → lasem/src/lsmsvgenums.c} +0 -0
  141. data/ext/mathematical/{lsmsvgenums.h → lasem/src/lsmsvgenums.h} +0 -0
  142. data/ext/mathematical/{lsmsvgfilterblend.c → lasem/src/lsmsvgfilterblend.c} +0 -0
  143. data/ext/mathematical/{lsmsvgfilterblend.h → lasem/src/lsmsvgfilterblend.h} +0 -0
  144. data/ext/mathematical/{lsmsvgfiltercomposite.c → lasem/src/lsmsvgfiltercomposite.c} +0 -0
  145. data/ext/mathematical/{lsmsvgfiltercomposite.h → lasem/src/lsmsvgfiltercomposite.h} +0 -0
  146. data/ext/mathematical/{lsmsvgfilterelement.c → lasem/src/lsmsvgfilterelement.c} +0 -0
  147. data/ext/mathematical/{lsmsvgfilterelement.h → lasem/src/lsmsvgfilterelement.h} +0 -0
  148. data/ext/mathematical/{lsmsvgfilterflood.c → lasem/src/lsmsvgfilterflood.c} +0 -0
  149. data/ext/mathematical/{lsmsvgfilterflood.h → lasem/src/lsmsvgfilterflood.h} +0 -0
  150. data/ext/mathematical/{lsmsvgfiltergaussianblur.c → lasem/src/lsmsvgfiltergaussianblur.c} +0 -0
  151. data/ext/mathematical/{lsmsvgfiltergaussianblur.h → lasem/src/lsmsvgfiltergaussianblur.h} +0 -0
  152. data/ext/mathematical/{lsmsvgfiltermerge.c → lasem/src/lsmsvgfiltermerge.c} +0 -0
  153. data/ext/mathematical/{lsmsvgfiltermerge.h → lasem/src/lsmsvgfiltermerge.h} +0 -0
  154. data/ext/mathematical/{lsmsvgfiltermergenode.c → lasem/src/lsmsvgfiltermergenode.c} +0 -0
  155. data/ext/mathematical/{lsmsvgfiltermergenode.h → lasem/src/lsmsvgfiltermergenode.h} +0 -0
  156. data/ext/mathematical/{lsmsvgfilteroffset.c → lasem/src/lsmsvgfilteroffset.c} +0 -0
  157. data/ext/mathematical/{lsmsvgfilteroffset.h → lasem/src/lsmsvgfilteroffset.h} +0 -0
  158. data/ext/mathematical/{lsmsvgfilterprimitive.c → lasem/src/lsmsvgfilterprimitive.c} +0 -0
  159. data/ext/mathematical/{lsmsvgfilterprimitive.h → lasem/src/lsmsvgfilterprimitive.h} +0 -0
  160. data/ext/mathematical/{lsmsvgfilterspecularlighting.c → lasem/src/lsmsvgfilterspecularlighting.c} +0 -0
  161. data/ext/mathematical/{lsmsvgfilterspecularlighting.h → lasem/src/lsmsvgfilterspecularlighting.h} +0 -0
  162. data/ext/mathematical/{lsmsvgfiltersurface.c → lasem/src/lsmsvgfiltersurface.c} +0 -0
  163. data/ext/mathematical/{lsmsvgfiltersurface.h → lasem/src/lsmsvgfiltersurface.h} +0 -0
  164. data/ext/mathematical/{lsmsvgfiltertile.c → lasem/src/lsmsvgfiltertile.c} +0 -0
  165. data/ext/mathematical/{lsmsvgfiltertile.h → lasem/src/lsmsvgfiltertile.h} +0 -0
  166. data/ext/mathematical/{lsmsvggelement.c → lasem/src/lsmsvggelement.c} +0 -0
  167. data/ext/mathematical/{lsmsvggelement.h → lasem/src/lsmsvggelement.h} +0 -0
  168. data/ext/mathematical/{lsmsvggradientelement.c → lasem/src/lsmsvggradientelement.c} +0 -0
  169. data/ext/mathematical/{lsmsvggradientelement.h → lasem/src/lsmsvggradientelement.h} +0 -0
  170. data/ext/mathematical/{lsmsvgimageelement.c → lasem/src/lsmsvgimageelement.c} +0 -0
  171. data/ext/mathematical/{lsmsvgimageelement.h → lasem/src/lsmsvgimageelement.h} +0 -0
  172. data/ext/mathematical/{lsmsvglength.c → lasem/src/lsmsvglength.c} +0 -0
  173. data/ext/mathematical/{lsmsvglength.h → lasem/src/lsmsvglength.h} +0 -0
  174. data/ext/mathematical/{lsmsvglineargradientelement.c → lasem/src/lsmsvglineargradientelement.c} +0 -0
  175. data/ext/mathematical/{lsmsvglineargradientelement.h → lasem/src/lsmsvglineargradientelement.h} +0 -0
  176. data/ext/mathematical/{lsmsvglineelement.c → lasem/src/lsmsvglineelement.c} +0 -0
  177. data/ext/mathematical/{lsmsvglineelement.h → lasem/src/lsmsvglineelement.h} +0 -0
  178. data/ext/mathematical/{lsmsvgmarkerelement.c → lasem/src/lsmsvgmarkerelement.c} +0 -0
  179. data/ext/mathematical/{lsmsvgmarkerelement.h → lasem/src/lsmsvgmarkerelement.h} +0 -0
  180. data/ext/mathematical/{lsmsvgmaskelement.c → lasem/src/lsmsvgmaskelement.c} +0 -0
  181. data/ext/mathematical/{lsmsvgmaskelement.h → lasem/src/lsmsvgmaskelement.h} +0 -0
  182. data/ext/mathematical/{lsmsvgmatrix.c → lasem/src/lsmsvgmatrix.c} +0 -0
  183. data/ext/mathematical/{lsmsvgmatrix.h → lasem/src/lsmsvgmatrix.h} +0 -0
  184. data/ext/mathematical/{lsmsvgpathelement.c → lasem/src/lsmsvgpathelement.c} +0 -0
  185. data/ext/mathematical/{lsmsvgpathelement.h → lasem/src/lsmsvgpathelement.h} +0 -0
  186. data/ext/mathematical/{lsmsvgpatternelement.c → lasem/src/lsmsvgpatternelement.c} +0 -0
  187. data/ext/mathematical/{lsmsvgpatternelement.h → lasem/src/lsmsvgpatternelement.h} +0 -0
  188. data/ext/mathematical/{lsmsvgpolygonelement.c → lasem/src/lsmsvgpolygonelement.c} +0 -0
  189. data/ext/mathematical/{lsmsvgpolygonelement.h → lasem/src/lsmsvgpolygonelement.h} +0 -0
  190. data/ext/mathematical/{lsmsvgpolylineelement.c → lasem/src/lsmsvgpolylineelement.c} +0 -0
  191. data/ext/mathematical/{lsmsvgpolylineelement.h → lasem/src/lsmsvgpolylineelement.h} +0 -0
  192. data/ext/mathematical/{lsmsvgradialgradientelement.c → lasem/src/lsmsvgradialgradientelement.c} +0 -0
  193. data/ext/mathematical/{lsmsvgradialgradientelement.h → lasem/src/lsmsvgradialgradientelement.h} +0 -0
  194. data/ext/mathematical/{lsmsvgrectelement.c → lasem/src/lsmsvgrectelement.c} +0 -0
  195. data/ext/mathematical/{lsmsvgrectelement.h → lasem/src/lsmsvgrectelement.h} +0 -0
  196. data/ext/mathematical/{lsmsvgstopelement.c → lasem/src/lsmsvgstopelement.c} +0 -0
  197. data/ext/mathematical/{lsmsvgstopelement.h → lasem/src/lsmsvgstopelement.h} +0 -0
  198. data/ext/mathematical/{lsmsvgstyle.c → lasem/src/lsmsvgstyle.c} +0 -14
  199. data/ext/mathematical/{lsmsvgstyle.h → lasem/src/lsmsvgstyle.h} +0 -0
  200. data/ext/mathematical/{lsmsvgsvgelement.c → lasem/src/lsmsvgsvgelement.c} +0 -0
  201. data/ext/mathematical/{lsmsvgsvgelement.h → lasem/src/lsmsvgsvgelement.h} +0 -0
  202. data/ext/mathematical/{lsmsvgswitchelement.c → lasem/src/lsmsvgswitchelement.c} +0 -0
  203. data/ext/mathematical/{lsmsvgswitchelement.h → lasem/src/lsmsvgswitchelement.h} +0 -0
  204. data/ext/mathematical/{lsmsvgsymbolelement.c → lasem/src/lsmsvgsymbolelement.c} +0 -0
  205. data/ext/mathematical/{lsmsvgsymbolelement.h → lasem/src/lsmsvgsymbolelement.h} +0 -0
  206. data/ext/mathematical/{lsmsvgtextelement.c → lasem/src/lsmsvgtextelement.c} +0 -0
  207. data/ext/mathematical/{lsmsvgtextelement.h → lasem/src/lsmsvgtextelement.h} +0 -0
  208. data/ext/mathematical/{lsmsvgtraits.c → lasem/src/lsmsvgtraits.c} +0 -0
  209. data/ext/mathematical/{lsmsvgtraits.h → lasem/src/lsmsvgtraits.h} +0 -0
  210. data/ext/mathematical/{lsmsvgtransformable.c → lasem/src/lsmsvgtransformable.c} +0 -0
  211. data/ext/mathematical/{lsmsvgtransformable.h → lasem/src/lsmsvgtransformable.h} +0 -0
  212. data/ext/mathematical/{lsmsvgtspanelement.c → lasem/src/lsmsvgtspanelement.c} +0 -0
  213. data/ext/mathematical/{lsmsvgtspanelement.h → lasem/src/lsmsvgtspanelement.h} +0 -0
  214. data/ext/mathematical/{lsmsvgtypes.h → lasem/src/lsmsvgtypes.h} +0 -0
  215. data/ext/mathematical/{lsmsvguseelement.c → lasem/src/lsmsvguseelement.c} +0 -0
  216. data/ext/mathematical/{lsmsvguseelement.h → lasem/src/lsmsvguseelement.h} +0 -0
  217. data/ext/mathematical/{lsmsvgview.c → lasem/src/lsmsvgview.c} +2 -1
  218. data/ext/mathematical/{lsmsvgview.h → lasem/src/lsmsvgview.h} +0 -0
  219. data/ext/mathematical/{lsmtraits.c → lasem/src/lsmtraits.c} +0 -0
  220. data/ext/mathematical/{lsmtraits.h → lasem/src/lsmtraits.h} +0 -0
  221. data/ext/mathematical/{lsmtypes.h → lasem/src/lsmtypes.h} +0 -0
  222. data/ext/mathematical/{lsmutils.c → lasem/src/lsmutils.c} +0 -0
  223. data/ext/mathematical/{lsmutils.h → lasem/src/lsmutils.h} +0 -0
  224. data/ext/mathematical/lasem/tests/dom.c +272 -0
  225. data/ext/mathematical/lasem/tests/lsmtest.c +597 -0
  226. data/ext/mathematical/lasem/tests/str.c +48 -0
  227. data/ext/mathematical/lasem/tests/suite.c +125 -0
  228. data/ext/mathematical/lasem/tools/generate-entity-array.c +2136 -0
  229. data/ext/mathematical/mathematical.c +38 -34
  230. data/lib/mathematical/render.rb +5 -4
  231. data/lib/mathematical/version.rb +1 -1
  232. data/test/mathematical/maliciousness_test.rb +27 -1
  233. metadata +242 -242
  234. data/ext/mathematical/lsmdomenumtypes.c +0 -99
  235. data/ext/mathematical/lsmdomenumtypes.h +0 -26
  236. data/ext/mathematical/lsmmathmlenumtypes.c +0 -666
  237. data/ext/mathematical/lsmmathmlenumtypes.h +0 -90
  238. data/ext/mathematical/lsmsvgenumtypes.c +0 -1083
  239. data/ext/mathematical/lsmsvgenumtypes.h +0 -111
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d9d51871f076bd11925a8bc4bc7cf250c2de8b75
4
- data.tar.gz: 2dfde62658cfb84f86004710c60e743e2c042e38
3
+ metadata.gz: 76b035ec15c5544af7d23d6f576db7bc631f1a99
4
+ data.tar.gz: d05835bb988ace6708c9c96f5b08e3af123f9e79
5
5
  SHA512:
6
- metadata.gz: e7921f6cbfbd8773985403dcd7b9987a2d4aa9ba748c8118a0637b2a196bbfe708db13471dc4227c59090d53be0502894eefa936c21e9a69532e0644ff497919
7
- data.tar.gz: 7c06f2688a1cf43ec5dacd443d3f2f35d3e89457b19f8bc04402d101d2ae1f93cc83df6e3ad9fec0a4f80b0f30e2ea3914afde2270be2cf7178f03c661adcb34
6
+ metadata.gz: 39d975bf3099679edf52fb1ab277f7e655482ed206a26de3a5e8ae2d93abc904bc5d0735f11789fc1c9c7378d038ba6842036b65565449bf4ad5d638e03612cd
7
+ data.tar.gz: 6e2a815f25d40bb1e3cea90f626f9a3669979b8ffbc847d7ade2549a123168fb35466d682009033521ce7058e5b4da1be608a5be212e66a773c66bfdb9113d62
data/Rakefile CHANGED
@@ -20,6 +20,10 @@ end
20
20
  Gem::PackageTask.new(spec) do |pkg|
21
21
  end
22
22
 
23
+ Rake::Task["compile"].enhance do
24
+ Rake::Task["destroy_copies"].invoke
25
+ end
26
+
23
27
  Rake::Task[:test].prerequisites << :compile
24
28
 
25
29
  task :default => [:test]
@@ -54,3 +58,11 @@ task :publish do
54
58
  system "echo yolo"
55
59
  end
56
60
  end
61
+
62
+ task :destroy_copies do
63
+ ext_dir = File.join(File.dirname(__FILE__), "ext", "mathematical")
64
+ Dir.glob("#{ext_dir}/*").select { |f| File.file?(f) }.each do |f|
65
+ next if f =~ /extconf.rb/ || f =~ /mathematical.c/
66
+ File.delete(f)
67
+ end
68
+ end
@@ -2,6 +2,9 @@ require 'mkmf'
2
2
  require 'rbconfig'
3
3
  host_os = RbConfig::CONFIG['host_os']
4
4
 
5
+ LASEM_DIR = File.join(File.dirname(__FILE__), "lasem", "src")
6
+ ITEX_DIR = File.join(File.dirname(__FILE__), "itexToMML")
7
+
5
8
  if host_os =~ /darwin|mac os/
6
9
  ENV['PKG_CONFIG_PATH'] = "/opt/X11/lib/pkgconfig:#{ENV['PKG_CONFIG_PATH']}"
7
10
  end
@@ -12,9 +15,16 @@ find_header("libxml/parser.h", "/usr/include/libxml2", "/usr/local/include/libxm
12
15
  find_header("libxml/xpath.h", "/usr/include/libxml2", "/usr/local/include/libxml2")
13
16
  find_header("libxml/xpathInternals.h", "/usr/include/libxml2", "/usr/local/include/libxml2")
14
17
 
18
+ # TODO: this is so frakkin' stupid. but I can't seem to get subdirs to compile any other way
19
+ # the `destroy_copies` task, immediately after `compile`, will destroy these files
20
+ FileUtils.cp_r(Dir.glob("#{LASEM_DIR}/*"), File.dirname(__FILE__))
21
+ File.delete(File.join(File.dirname(__FILE__), "lasemrender.c"))
22
+
23
+ FileUtils.cp_r(Dir.glob("#{ITEX_DIR}/*"), File.dirname(__FILE__))
24
+
15
25
  have_library("pangocairo-1.0")
16
26
 
17
- $LDFLAGS += " #{`pkg-config --static --libs glib-2.0 gdk-pixbuf-2.0 cairo pango`}"
18
- $CFLAGS += " #{`pkg-config --cflags glib-2.0 gdk-pixbuf-2.0 cairo pango`}"
27
+ $LDFLAGS += " #{`pkg-config --static --libs glib-2.0 gdk-pixbuf-2.0 cairo pango`.chomp}"
28
+ $CFLAGS += " #{`pkg-config --cflags glib-2.0 gdk-pixbuf-2.0 cairo pango`.chomp} -I#{LASEM_DIR} -I#{ITEX_DIR}"
19
29
 
20
30
  create_makefile("mathematical/mathematical")
File without changes
File without changes
File without changes
@@ -0,0 +1,63 @@
1
+ /* itex2MML 1.4.5
2
+ * itex2MML.h last modified 10/2/2010
3
+ */
4
+
5
+ #ifndef ITEX2MML_H
6
+ #define ITEX2MML_H
7
+
8
+ #define ITEX2MML_VERSION "1.4.5"
9
+
10
+ #ifdef __cplusplus
11
+ extern "C" {
12
+ #endif
13
+
14
+ /* Step 1. Parse a buffer with itex source; return value is mathml, or 0 on failure (e.g., parse error).
15
+ */
16
+ extern char * itex2MML_parse (const char * buffer, unsigned long length);
17
+
18
+ /* Step 2. Free the string from Step 1.
19
+ */
20
+ extern void itex2MML_free_string (char * str);
21
+
22
+
23
+ /* Alternatively, to filter generic source and converting embedded equations, use:
24
+ */
25
+ extern int itex2MML_filter (const char * buffer, unsigned long length);
26
+
27
+ extern int itex2MML_html_filter (const char * buffer, unsigned long length);
28
+ extern int itex2MML_strict_html_filter (const char * buffer, unsigned long length);
29
+
30
+
31
+ /* To change output methods:
32
+ *
33
+ * Note: If length is 0, then buffer is treated like a string; otherwise only length bytes are written.
34
+ */
35
+ extern void (*itex2MML_write) (const char * buffer, unsigned long length); /* default writes to stdout */
36
+ extern void (*itex2MML_write_mathml) (const char * mathml); /* default calls itex2MML_write(mathml,0) */
37
+ extern void (*itex2MML_error) (const char * msg); /* default writes to stderr */
38
+
39
+
40
+ /* Other stuff:
41
+ */
42
+ extern void itex2MML_setup (const char * buffer, unsigned long length);
43
+
44
+ extern void itex2MML_restart (void);
45
+
46
+ extern char * itex2MML_copy_string (const char * str);
47
+ extern char * itex2MML_copy_string_extra (const char * str, unsigned extra);
48
+ extern char * itex2MML_copy2 (const char * first, const char * second);
49
+ extern char * itex2MML_copy3 (const char * first, const char * second, const char * third);
50
+ extern char * itex2MML_copy_escaped (const char * str);
51
+
52
+ extern char * itex2MML_empty_string;
53
+
54
+ extern int itex2MML_lineno;
55
+
56
+ extern int itex2MML_rowposn;
57
+ extern int itex2MML_displaymode;
58
+
59
+ #ifdef __cplusplus
60
+ }
61
+ #endif
62
+
63
+ #endif /* ! ITEX2MML_H */
@@ -32,8 +32,9 @@
32
32
  #include <cairo-pdf.h>
33
33
  #include <cairo-svg.h>
34
34
  #include <cairo-ps.h>
35
+ #include <../config.h>
35
36
 
36
- #include "itex2MML.h"
37
+ #include <../itex2mml/itex2MML.h>
37
38
 
38
39
  static char *option_debug_domains = NULL;
39
40
  static char *option_output_file_format = NULL;
@@ -75,7 +76,7 @@ static const GOptionEntry entries[] =
75
76
  { NULL }
76
77
  };
77
78
 
78
- int mainbar(int argc, char **argv)
79
+ int main(int argc, char **argv)
79
80
  {
80
81
  LsmDomDocument *document;
81
82
  LsmDomView *view;
@@ -89,41 +90,46 @@ int mainbar(int argc, char **argv)
89
90
  double height_pt, width_pt;
90
91
  unsigned int height, width;
91
92
 
93
+ bindtextdomain (GETTEXT_PACKAGE, PACKAGE_LOCALE_DIR);
94
+ bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
95
+ textdomain (GETTEXT_PACKAGE);
96
+
97
+ #if !GLIB_CHECK_VERSION(2,36,0)
92
98
  g_type_init ();
99
+ #endif
93
100
 
94
101
  context = g_option_context_new (NULL);
95
102
  g_option_context_add_main_entries (context, entries, NULL);
96
103
 
97
- // if (!g_option_context_parse (context, &argc, &argv, &error))
98
- // {
99
- // g_option_context_free (context);
100
- // g_print (_("Option parsing failed: %s\n"), error->message);
101
- // return EXIT_FAILURE;
102
- // }
104
+ if (!g_option_context_parse (context, &argc, &argv, &error))
105
+ {
106
+ g_option_context_free (context);
107
+ g_print (_("Option parsing failed: %s\n"), error->message);
108
+ return EXIT_FAILURE;
109
+ }
103
110
 
104
111
  g_option_context_free (context);
105
112
 
106
- // if (option_zoom < 0.0) {
107
- // g_print (_("Invalid zoom value"));
108
- // return EXIT_FAILURE;
109
- // }
113
+ if (option_zoom < 0.0) {
114
+ g_print (_("Invalid zoom value"));
115
+ return EXIT_FAILURE;
116
+ }
110
117
 
111
118
  lsm_debug_enable (option_debug_domains);
112
119
 
113
- // if (option_input_filenames == NULL || g_strv_length (option_input_filenames) > 1) {
114
- // g_print (_("One input file name is required\n"));
115
- // return EXIT_FAILURE;
116
- // }
117
- // option_input_filenames = ;
120
+ if (option_input_filenames == NULL || g_strv_length (option_input_filenames) > 1) {
121
+ g_print (_("One input file name is required\n"));
122
+ return EXIT_FAILURE;
123
+ }
118
124
 
119
- input_filename = "/Users/garentorikian/Downloads/lasem-ruby/foo.mml";
125
+ input_filename = option_input_filenames[0];
120
126
 
121
127
  if (option_output_file_format != NULL) {
122
128
  for (format = 0; format < G_N_ELEMENTS(file_formats) - 1; format++)
123
129
  if (g_ascii_strcasecmp (option_output_file_format, file_formats[format]) == 0)
124
130
  break;
125
131
  if (FORMAT_UNKNOWN == format) {
126
- g_print (_("Unknown format : %s\n"), option_output_file_format);
132
+ g_print (_("Unknown format: %s\n"), option_output_file_format);
127
133
  return EXIT_FAILURE;
128
134
  }
129
135
  } else
@@ -180,12 +186,12 @@ int mainbar(int argc, char **argv)
180
186
  if (document != NULL) {
181
187
  if (lsm_debug_check (&lsm_debug_category_dom, LSM_DEBUG_LEVEL_LOG)) {
182
188
  void *buffer;
183
- int size;
189
+ gsize size;
184
190
 
185
191
  lsm_dom_document_save_to_memory (document, &buffer, &size, NULL);
186
192
 
187
193
  if (buffer != NULL) {
188
- g_printf ("%*s\n", size, (char *) buffer);
194
+ g_printf ("%*s\n", (int) size, (char *) buffer);
189
195
  g_free (buffer);
190
196
  }
191
197
  }
File without changes
File without changes
@@ -25,6 +25,8 @@
25
25
  #include <glib/gprintf.h>
26
26
  #include <stdlib.h>
27
27
 
28
+ static void lsm_debug_with_level (LsmDebugCategory *category, LsmDebugLevel level, const char *format, va_list args) G_GNUC_PRINTF(3,0);
29
+
28
30
  struct _LsmDebugCategory {
29
31
  char *name;
30
32
  LsmDebugLevel level;
@@ -60,9 +60,9 @@ extern LsmDebugCategory lsm_debug_category_viewport;
60
60
  #define lsm_log_render(...) lsm_log (&lsm_debug_category_render, __VA_ARGS__)
61
61
  #define lsm_warning_render(...) lsm_warning (&lsm_debug_category_render, __VA_ARGS__)
62
62
 
63
- void lsm_warning (LsmDebugCategory *category, const char *format, ...);
64
- void lsm_debug (LsmDebugCategory *category, const char *format, ...);
65
- void lsm_log (LsmDebugCategory *category, const char *format, ...);
63
+ void lsm_warning (LsmDebugCategory *category, const char *format, ...) G_GNUC_PRINTF(2,3);
64
+ void lsm_debug (LsmDebugCategory *category, const char *format, ...) G_GNUC_PRINTF(2,3);
65
+ void lsm_log (LsmDebugCategory *category, const char *format, ...) G_GNUC_PRINTF(2,3);
66
66
 
67
67
  gboolean lsm_debug_check (LsmDebugCategory *category, LsmDebugLevel level);
68
68
 
File without changes
@@ -1,6 +1,6 @@
1
1
  /* Lasem
2
2
  *
3
- * Copyright © 2007-2009 Emmanuel Pacaud
3
+ * Copyright © 2007-2014 Emmanuel Pacaud
4
4
  *
5
5
  * This library is free software; you can redistribute it and/or
6
6
  * modify it under the terms of the GNU Lesser General Public
@@ -30,7 +30,7 @@
30
30
  #include <libxml/parser.h>
31
31
  #include <gio/gio.h>
32
32
  #include <string.h>
33
- #include "itex2MML.h"
33
+ #include <../itex2mml/itex2MML.h>
34
34
 
35
35
  typedef enum {
36
36
  STATE
@@ -202,7 +202,7 @@ lsm_dom_parser_warning (void *user_data, const char *msg, ...)
202
202
  va_list args;
203
203
 
204
204
  va_start(args, msg);
205
- lsm_warning_dom (msg);
205
+ lsm_warning_dom ("%s", msg);
206
206
  va_end(args);
207
207
  }
208
208
 
@@ -212,7 +212,7 @@ lsm_dom_parser_error (void *user_data, const char *msg, ...)
212
212
  va_list args;
213
213
 
214
214
  va_start(args, msg);
215
- lsm_warning_dom (msg);
215
+ lsm_warning_dom ("%s", msg);
216
216
  va_end(args);
217
217
  }
218
218
 
@@ -222,7 +222,7 @@ lsm_dom_parser_fatal_error (void *user_data, const char *msg, ...)
222
222
  va_list args;
223
223
 
224
224
  va_start(args, msg);
225
- lsm_warning_dom (msg);
225
+ lsm_warning_dom ("%s", msg);
226
226
  va_end(args);
227
227
  }
228
228
 
@@ -259,7 +259,7 @@ typedef enum {
259
259
 
260
260
  static LsmDomDocument *
261
261
  _parse_memory (LsmDomDocument *document, LsmDomNode *node,
262
- const void *buffer, int size, GError **error)
262
+ const void *buffer, gsize size, GError **error)
263
263
  {
264
264
  static LsmDomSaxParserState state;
265
265
 
@@ -269,7 +269,7 @@ _parse_memory (LsmDomDocument *document, LsmDomNode *node,
269
269
  else
270
270
  state.current_node = LSM_DOM_NODE (document);
271
271
 
272
- if (size < 0)
272
+ if (size < 1)
273
273
  size = strlen (buffer);
274
274
 
275
275
  if (xmlSAXUserParseMemory (&sax_handler, &state, buffer, size) < 0) {
@@ -293,18 +293,18 @@ _parse_memory (LsmDomDocument *document, LsmDomNode *node,
293
293
  * @document: a #LsmDomDocument
294
294
  * @node: a #LsmDomNode
295
295
  * @buffer: a memory buffer holding xml data
296
- * @size: size of the xml data, in bytes
296
+ * @size: size of the xml data, in bytes, 0 if unknown
297
297
  * @error: an error placeholder
298
298
  *
299
299
  * Append a chunk of xml tree to an existing document. The resulting nodes will be appended to
300
300
  * @node, or to @document if @node == NULL.
301
301
  *
302
- * Size set to a negative value indicated an unknow xml data size.
302
+ * Size set to 0 indicates an unknow xml data size.
303
303
  */
304
304
 
305
305
  void
306
306
  lsm_dom_document_append_from_memory (LsmDomDocument *document, LsmDomNode *node,
307
- const void *buffer, int size, GError **error)
307
+ const void *buffer, gsize size, GError **error)
308
308
  {
309
309
  g_return_if_fail (LSM_IS_DOM_DOCUMENT (document));
310
310
  g_return_if_fail (LSM_IS_DOM_NODE (node) || node == NULL);
@@ -313,14 +313,30 @@ lsm_dom_document_append_from_memory (LsmDomDocument *document, LsmDomNode *node,
313
313
  _parse_memory (document, node, buffer, size, error);
314
314
  }
315
315
 
316
+ /**
317
+ * lsm_dom_document_new_from_memory:
318
+ * @buffer: xml data
319
+ * @size: size of the data, in bytes, 0 if unknown
320
+ * @error: an error placeholder
321
+ *
322
+ * Create a new document from a memory data buffer.
323
+ */
324
+
316
325
  LsmDomDocument *
317
- lsm_dom_document_new_from_memory (const void *buffer, int size, GError **error)
326
+ lsm_dom_document_new_from_memory (const void *buffer, gsize size, GError **error)
318
327
  {
319
328
  g_return_val_if_fail (buffer != NULL, NULL);
320
329
 
321
- return _parse_memory (NULL, NULL, buffer, size, error);
330
+ return _parse_memory (NULL, NULL, buffer, size, error);
322
331
  }
323
332
 
333
+ /**
334
+ * lsm_dom_document_new_from_file:
335
+ * @file: a #GFile
336
+ * @error: an error placeholder
337
+ *
338
+ * Create a new document from a #GFile.
339
+ */
324
340
 
325
341
  static LsmDomDocument *
326
342
  lsm_dom_document_new_from_file (GFile *file, GError **error)
@@ -339,6 +355,14 @@ lsm_dom_document_new_from_file (GFile *file, GError **error)
339
355
  return document;
340
356
  }
341
357
 
358
+ /**
359
+ * lsm_dom_document_new_from_path:
360
+ * @path: a file path
361
+ * @error: an error placeholder
362
+ *
363
+ * Create a new document from the data stored in @path.
364
+ */
365
+
342
366
  LsmDomDocument *
343
367
  lsm_dom_document_new_from_path (const char *path, GError **error)
344
368
  {
@@ -359,6 +383,14 @@ lsm_dom_document_new_from_path (const char *path, GError **error)
359
383
  return document;
360
384
  }
361
385
 
386
+ /**
387
+ * lsm_dom_document_new_from_url:
388
+ * @url: a file url
389
+ * @error: an error placeholder
390
+ *
391
+ * Create a new document from the data stored at @url.
392
+ */
393
+
362
394
  LsmDomDocument *
363
395
  lsm_dom_document_new_from_url (const char *url, GError **error)
364
396
  {
@@ -384,6 +416,8 @@ lsm_dom_document_new_from_url (const char *url, GError **error)
384
416
  * @document: a #LsmDomDocument
385
417
  * @stream: stream to save to
386
418
  * @error: an error placeholder
419
+ *
420
+ * Save @document as an xml representation into @stream.
387
421
  */
388
422
 
389
423
  void
@@ -395,8 +429,18 @@ lsm_dom_document_save_to_stream (LsmDomDocument *document, GOutputStream *stream
395
429
  lsm_dom_node_write_to_stream (LSM_DOM_NODE (document), stream, error);
396
430
  }
397
431
 
432
+ /**
433
+ * lsm_dom_document_save_to_memory:
434
+ * @document: a #LsmDomDocument
435
+ * @buffer: placeholder for a pointer to the resulting data buffer
436
+ * @size: placeholder for the data size
437
+ * @error: placeholder for a #GError
438
+ *
439
+ * Save @document as an xml representation into @buffer.
440
+ */
441
+
398
442
  void
399
- lsm_dom_document_save_to_memory (LsmDomDocument *document, void **buffer, int *size, GError **error)
443
+ lsm_dom_document_save_to_memory (LsmDomDocument *document, void **buffer, gsize *size, GError **error)
400
444
  {
401
445
  GOutputStream *stream;
402
446
 
@@ -426,6 +470,15 @@ lsm_dom_document_save_to_memory (LsmDomDocument *document, void **buffer, int *s
426
470
  g_object_unref (stream);
427
471
  }
428
472
 
473
+ /**
474
+ * lsm_dom_document_save_to_path:
475
+ * @document: a #LsmDomDocument
476
+ * @path: a file path
477
+ * @error: placeholder for a #GError
478
+ *
479
+ * Save @document as an xml representation to a file, replacing the already existing file if needed.
480
+ */
481
+
429
482
  void
430
483
  lsm_dom_document_save_to_path (LsmDomDocument *document, const char *path, GError **error)
431
484
  {
@@ -443,15 +496,24 @@ lsm_dom_document_save_to_path (LsmDomDocument *document, const char *path, GErro
443
496
  g_object_unref (file);
444
497
  }
445
498
 
499
+ /**
500
+ * lsm_dom_document_save_to_url:
501
+ * @document: a #LsmDomDocument
502
+ * @url: an url
503
+ * @error: placeholder for a #GError
504
+ *
505
+ * Save @document as an xml representation to @url, replacing the already existing file if needed.
506
+ */
507
+
446
508
  void
447
- lsm_dom_document_save_to_url (LsmDomDocument *document, const char *path, GError **error)
509
+ lsm_dom_document_save_to_url (LsmDomDocument *document, const char *url, GError **error)
448
510
  {
449
511
  GFile *file;
450
512
  GFileOutputStream *stream;
451
513
 
452
- g_return_if_fail (path != NULL);
514
+ g_return_if_fail (url != NULL);
453
515
 
454
- file = g_file_new_for_uri (path);
516
+ file = g_file_new_for_uri (url);
455
517
  stream = g_file_create (file, G_FILE_CREATE_REPLACE_DESTINATION, NULL, error);
456
518
  if (stream != NULL) {
457
519
  lsm_dom_document_save_to_stream (document, G_OUTPUT_STREAM (stream), error);