github-linguist 7.11.1 → 7.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (583) hide show
  1. checksums.yaml +4 -4
  2. data/ext/linguist/lex.linguist_yy.c +619 -363
  3. data/ext/linguist/lex.linguist_yy.h +425 -59
  4. data/ext/linguist/linguist.c +5 -35
  5. data/ext/linguist/linguist.h +0 -18
  6. data/ext/linguist/tokenizer.l +61 -36
  7. data/grammars/annotation.liquidhaskell.haskell.json +1 -1835
  8. data/grammars/config.xcompose.json +1 -80
  9. data/grammars/documentation.markdown.injection.haxe.json +1 -22
  10. data/grammars/etc.json +1 -987
  11. data/grammars/file.lasso.json +1 -702
  12. data/grammars/hidden.manref.json +1 -29
  13. data/grammars/hidden.regexp.injection-shell.json +1 -28
  14. data/grammars/hint.haskell.json +1 -1762
  15. data/grammars/hint.message.haskell.json +1 -1786
  16. data/grammars/hint.type.haskell.json +1 -1759
  17. data/grammars/injections.etc.json +1 -659
  18. data/grammars/inline.prisma.json +1 -55
  19. data/grammars/markdown.hack.codeblock.json +1 -20
  20. data/grammars/markdown.haxe.codeblock.json +1 -26
  21. data/grammars/markdown.hxml.codeblock.json +1 -26
  22. data/grammars/markdown.plantuml.codeblock.json +1 -26
  23. data/grammars/objdump.x86asm.json +1 -69
  24. data/grammars/source.4dm.json +1 -1156
  25. data/grammars/source.SASLog.json +1 -18
  26. data/grammars/source.abap.json +1 -335
  27. data/grammars/source.abl.json +1 -734
  28. data/grammars/source.abnf.json +1 -294
  29. data/grammars/source.actionscript.3.json +1 -1538
  30. data/grammars/source.acucobol.json +1 -13
  31. data/grammars/source.ada.json +1 -133
  32. data/grammars/source.afm.json +1 -1207
  33. data/grammars/source.agc.json +1 -87
  34. data/grammars/source.agda.json +1 -72
  35. data/grammars/source.ahk.json +1 -195
  36. data/grammars/source.al.json +1 -130
  37. data/grammars/source.alloy.json +1 -40
  38. data/grammars/source.ampl.json +1 -151
  39. data/grammars/source.angelscript.json +1 -186
  40. data/grammars/source.antlr.json +1 -295
  41. data/grammars/source.apache-config.json +1 -346
  42. data/grammars/source.apache-config.mod_perl.json +1 -65
  43. data/grammars/source.apl.json +1 -1427
  44. data/grammars/source.applescript.json +1 -1384
  45. data/grammars/source.asl.json +1 -56
  46. data/grammars/source.asn.json +1 -55
  47. data/grammars/source.asp.json +1 -151
  48. data/grammars/source.aspectj.json +1 -960
  49. data/grammars/source.assembly.json +1 -116
  50. data/grammars/source.ats.json +1 -164
  51. data/grammars/source.autoit.json +1 -167
  52. data/grammars/source.avro.json +1 -381
  53. data/grammars/source.awk.json +1 -384
  54. data/grammars/source.ballerina.json +1 -1785
  55. data/grammars/source.batchfile.json +1 -732
  56. data/grammars/source.bdf.json +1 -425
  57. data/grammars/source.befunge.json +1 -34
  58. data/grammars/source.bf.json +1 -30
  59. data/grammars/source.blitzmax.json +1 -905
  60. data/grammars/source.bnf.json +1 -191
  61. data/grammars/source.boo.json +1 -448
  62. data/grammars/source.brightauthorproject.json +1 -24
  63. data/grammars/source.brightscript.json +1 -148
  64. data/grammars/source.bsl.json +1 -451
  65. data/grammars/source.bsv.json +1 -277
  66. data/grammars/source.c++.json +1 -436
  67. data/grammars/source.c++.qt.json +1 -29
  68. data/grammars/source.c.ec.json +1 -33
  69. data/grammars/source.c.json +1 -712
  70. data/grammars/source.c.nwscript.json +1 -0
  71. data/grammars/source.c.platform.json +1 -1115
  72. data/grammars/source.c2hs.json +1 -24
  73. data/grammars/source.cabal.json +1 -63
  74. data/grammars/source.cache.cmake.json +1 -70
  75. data/grammars/source.cake.json +1 -13
  76. data/grammars/source.camlp4.ocaml.json +1 -60
  77. data/grammars/source.capnp.json +1 -88
  78. data/grammars/source.ceylon.json +1 -93
  79. data/grammars/source.cfscript.cfc.json +1 -162
  80. data/grammars/source.cfscript.json +1 -737
  81. data/grammars/source.changelogs.rpm-spec.json +1 -91
  82. data/grammars/source.chapel.json +1 -265
  83. data/grammars/source.cirru.json +1 -61
  84. data/grammars/source.clarion.json +1 -146
  85. data/grammars/source.clean.json +1 -222
  86. data/grammars/source.click.json +1 -107
  87. data/grammars/source.clips.json +1 -67
  88. data/grammars/source.clojure.json +1 -429
  89. data/grammars/source.cm.json +1 -49
  90. data/grammars/source.cmake.json +1 -173
  91. data/grammars/source.cobol.json +1 -485
  92. data/grammars/source.coffee.json +1 -1310
  93. data/grammars/source.cool.json +1 -96
  94. data/grammars/source.coq.json +1 -58
  95. data/grammars/source.crystal.json +1 -2694
  96. data/grammars/source.cs.json +1 -4323
  97. data/grammars/source.csound-document.json +1 -175
  98. data/grammars/source.csound-score.json +1 -191
  99. data/grammars/source.csound.json +1 -824
  100. data/grammars/source.css.json +1 -1859
  101. data/grammars/source.css.less.json +1 -536
  102. data/grammars/source.css.mss.json +1 -249
  103. data/grammars/source.css.postcss.sugarss.json +1 -260
  104. data/grammars/source.css.scss.json +1 -1873
  105. data/grammars/source.csx.json +1 -13
  106. data/grammars/source.cuda-c++.json +1 -103
  107. data/grammars/source.curlrc.json +1 -984
  108. data/grammars/source.cwl.json +1 -103
  109. data/grammars/source.cython.json +1 -1912
  110. data/grammars/source.d.json +1 -741
  111. data/grammars/source.dart.json +1 -433
  112. data/grammars/source.data-weave.json +1 -1580
  113. data/grammars/source.desktop.json +1 -86
  114. data/grammars/source.diff.json +1 -153
  115. data/grammars/source.dircolors.json +1 -137
  116. data/grammars/source.direct-x.json +1 -135
  117. data/grammars/source.disasm.json +1 -30
  118. data/grammars/source.ditroff.desc.json +1 -411
  119. data/grammars/source.ditroff.json +1 -1280
  120. data/grammars/source.dm.json +1 -628
  121. data/grammars/source.dmf.json +1 -96
  122. data/grammars/source.dockerfile.json +1 -88
  123. data/grammars/source.dosbox-conf.json +1 -97
  124. data/grammars/source.dot.json +1 -117
  125. data/grammars/source.dylan.json +1 -212
  126. data/grammars/source.ebnf.json +1 -240
  127. data/grammars/source.editorconfig.json +1 -365
  128. data/grammars/source.eiffel.json +1 -133
  129. data/grammars/source.elixir.json +1 -965
  130. data/grammars/source.elm.json +1 -375
  131. data/grammars/source.emacs.lisp.json +1 -1301
  132. data/grammars/source.erlang.json +1 -1647
  133. data/grammars/source.essl.json +1 -37
  134. data/grammars/source.factor.json +1 -252
  135. data/grammars/source.fan.json +1 -341
  136. data/grammars/source.fancy.json +1 -245
  137. data/grammars/source.faust.json +1 -119
  138. data/grammars/source.figctrl.json +1 -252
  139. data/grammars/source.figfont.json +1 -121
  140. data/grammars/source.firestore.json +1 -289
  141. data/grammars/source.fish.json +1 -190
  142. data/grammars/source.fontdir.json +1 -99
  143. data/grammars/source.fontforge.json +1 -355
  144. data/grammars/source.forth.json +1 -84
  145. data/grammars/source.fortran.json +1 -464
  146. data/grammars/source.fortran.modern.json +1 -200
  147. data/grammars/source.fsharp.fsi.json +1 -9
  148. data/grammars/source.fsharp.fsl.json +1 -9
  149. data/grammars/source.fsharp.fsx.json +1 -13
  150. data/grammars/source.fsharp.json +1 -452
  151. data/grammars/source.fstar.json +1 -439
  152. data/grammars/source.futhark.json +1 -167
  153. data/grammars/source.gap.json +1 -163
  154. data/grammars/source.gcode.json +1 -176
  155. data/grammars/source.gdb.json +1 -160
  156. data/grammars/source.gdb.session.json +1 -70
  157. data/grammars/source.gdbregs.json +1 -14
  158. data/grammars/source.gdscript.json +1 -491
  159. data/grammars/source.gedcom.json +1 -196
  160. data/grammars/source.generic-db.json +1 -41
  161. data/grammars/source.gerber.json +1 -321
  162. data/grammars/source.gf.json +1 -51
  163. data/grammars/source.gfm.blade.json +1 -15
  164. data/grammars/source.gfm.json +1 -1913
  165. data/grammars/source.gitattributes.json +1 -111
  166. data/grammars/source.gitconfig.json +1 -450
  167. data/grammars/source.gitignore.json +1 -140
  168. data/grammars/source.glsl.json +1 -139
  169. data/grammars/source.gn.json +1 -345
  170. data/grammars/source.gnuplot.json +1 -260
  171. data/grammars/source.go.json +1 -540
  172. data/grammars/source.golo.json +1 -177
  173. data/grammars/source.gosu.2.json +1 -153
  174. data/grammars/source.grace.json +1 -675
  175. data/grammars/source.graphql.json +1 -978
  176. data/grammars/source.gremlin.json +1 -200
  177. data/grammars/source.groovy.gradle.json +1 -69
  178. data/grammars/source.groovy.json +1 -1374
  179. data/grammars/source.hack.json +1 -2595
  180. data/grammars/source.haproxy-config.json +1 -152
  181. data/grammars/source.harbour.json +1 -388
  182. data/grammars/source.haskell.json +1 -1760
  183. data/grammars/source.hc.json +1 -709
  184. data/grammars/source.hgignore.json +1 -34
  185. data/grammars/source.hlsl.json +1 -211
  186. data/grammars/source.hosts.json +1 -40
  187. data/grammars/source.hql.json +1 -492
  188. data/grammars/source.hsc2hs.json +1 -9
  189. data/grammars/source.hsig.json +1 -1760
  190. data/grammars/source.httpspec.json +1 -283
  191. data/grammars/source.hx.argument.json +1 -80
  192. data/grammars/source.hx.json +1 -2428
  193. data/grammars/source.hx.type.json +1 -8
  194. data/grammars/source.hxml.json +1 -59
  195. data/grammars/source.hy.json +1 -429
  196. data/grammars/source.ideal.json +1 -356
  197. data/grammars/source.idl-dlm.json +1 -105
  198. data/grammars/source.idl.json +1 -246
  199. data/grammars/source.idris.json +1 -523
  200. data/grammars/source.igor.json +1 -369
  201. data/grammars/source.inform7.json +1 -183
  202. data/grammars/source.ini.json +1 -107
  203. data/grammars/source.ini.npmrc.json +1 -311
  204. data/grammars/source.inno.json +1 -133
  205. data/grammars/source.inputrc.json +1 -500
  206. data/grammars/source.io.json +1 -156
  207. data/grammars/source.ioke.json +1 -266
  208. data/grammars/source.isabelle.root.json +1 -64
  209. data/grammars/source.isabelle.theory.json +1 -102
  210. data/grammars/source.j.json +1 -260
  211. data/grammars/source.jasmin.json +1 -294
  212. data/grammars/source.java-properties.json +1 -87
  213. data/grammars/source.java.json +1 -1020
  214. data/grammars/source.jcl.json +1 -46
  215. data/grammars/source.jflex.json +1 -484
  216. data/grammars/source.jison.json +1 -711
  217. data/grammars/source.jisonlex-injection.json +1 -10
  218. data/grammars/source.jisonlex.json +1 -434
  219. data/grammars/source.jolie.json +1 -132
  220. data/grammars/source.jq.json +1 -211
  221. data/grammars/source.js.css.json +1 -328
  222. data/grammars/source.js.json +1 -1897
  223. data/grammars/source.js.jsx.json +1 -2488
  224. data/grammars/source.js.objj.json +1 -419
  225. data/grammars/source.js.regexp.json +1 -152
  226. data/grammars/source.js.regexp.replacement.json +1 -26
  227. data/grammars/source.jsdoc.json +1 -460
  228. data/grammars/source.json.json +1 -139
  229. data/grammars/source.jsonnet.json +1 -197
  230. data/grammars/source.julia.console.json +1 -51
  231. data/grammars/source.julia.json +1 -991
  232. data/grammars/source.kotlin.json +1 -704
  233. data/grammars/source.lark.json +1 -0
  234. data/grammars/source.lbnf.json +1 -0
  235. data/grammars/source.lcov.json +1 -398
  236. data/grammars/source.lean.json +1 -226
  237. data/grammars/source.lean.markdown.json +1 -2598
  238. data/grammars/source.lex.json +1 -232
  239. data/grammars/source.lex.regexp.json +1 -269
  240. data/grammars/source.lid.json +1 -19
  241. data/grammars/source.lilypond.json +1 -869
  242. data/grammars/source.lisp.json +1 -101
  243. data/grammars/source.litcoffee.json +1 -654
  244. data/grammars/source.livescript.json +1 -603
  245. data/grammars/source.llvm.json +1 -61
  246. data/grammars/source.logos.json +1 -24
  247. data/grammars/source.logtalk.json +1 -310
  248. data/grammars/source.loomscript.json +1 -208
  249. data/grammars/source.lsl.json +1 -241
  250. data/grammars/source.ltspice.symbol.json +1 -294
  251. data/grammars/source.lua.json +1 -275
  252. data/grammars/source.m2.json +1 -125
  253. data/grammars/source.m4.json +1 -229
  254. data/grammars/source.m68k.json +1 -412
  255. data/grammars/source.mailmap.json +1 -28
  256. data/grammars/source.makefile.json +1 -470
  257. data/grammars/source.makegen.json +1 -9
  258. data/grammars/source.man-conf.json +1 -153
  259. data/grammars/source.mask.json +1 -816
  260. data/grammars/source.mata.json +1 -125
  261. data/grammars/source.mathematica.json +1 -416
  262. data/grammars/source.matlab.json +1 -1096
  263. data/grammars/source.maxscript.json +1 -465
  264. data/grammars/source.mcfunction-snapshot.json +1 -24480
  265. data/grammars/source.mcfunction.json +1 -1354
  266. data/grammars/source.mercury.json +1 -246
  267. data/grammars/source.meson.json +1 -165
  268. data/grammars/source.meta-info.json +1 -146
  269. data/grammars/source.ml.json +1 -285
  270. data/grammars/source.mlir.json +1 -109
  271. data/grammars/source.modelica.json +1 -142
  272. data/grammars/source.modula-3.json +1 -88
  273. data/grammars/source.modula2.json +1 -94
  274. data/grammars/source.monkey.json +1 -694
  275. data/grammars/source.moonscript.json +1 -144
  276. data/grammars/source.mql5.json +1 -187
  277. data/grammars/source.msl.json +1 -755
  278. data/grammars/source.mupad.json +1 -131
  279. data/grammars/source.nanorc.json +1 -333
  280. data/grammars/source.nasl.json +1 -155
  281. data/grammars/source.ncl.json +1 -53
  282. data/grammars/source.ne.json +1 -105
  283. data/grammars/source.nemerle.json +1 -132
  284. data/grammars/source.neon.json +1 -381
  285. data/grammars/source.nesc.json +1 -21
  286. data/grammars/source.netlinx.erb.json +1 -34
  287. data/grammars/source.netlinx.json +1 -704
  288. data/grammars/source.nextflow-groovy.json +1 -1359
  289. data/grammars/source.nextflow.json +1 -94
  290. data/grammars/source.nginx.json +1 -815
  291. data/grammars/source.nim.comment.json +1 -82
  292. data/grammars/source.nim.json +1 -1083
  293. data/grammars/source.nim_filter.json +1 -113
  294. data/grammars/source.nimcfg.json +1 -103
  295. data/grammars/source.ninja.json +1 -248
  296. data/grammars/source.nit.json +1 -234
  297. data/grammars/source.nix.json +1 -1196
  298. data/grammars/source.nsis.json +1 -152
  299. data/grammars/source.nu.json +1 -516
  300. data/grammars/source.nut.json +1 -262
  301. data/grammars/source.objc++.json +1 -12
  302. data/grammars/source.objc.json +1 -910
  303. data/grammars/source.objc.platform.json +1 -842
  304. data/grammars/source.objectscript.json +1 -309
  305. data/grammars/source.objectscript_class.json +1 -674
  306. data/grammars/source.objectscript_csp.json +1 -19
  307. data/grammars/source.objectscript_macros.json +1 -226
  308. data/grammars/source.ocaml.json +1 -1418
  309. data/grammars/source.ocamllex.json +1 -298
  310. data/grammars/source.ocamlyacc.json +1 -339
  311. data/grammars/source.odin-ehr.json +1 -806
  312. data/grammars/source.odin.json +1 -402
  313. data/grammars/source.ooc.json +1 -685
  314. data/grammars/source.opa.json +1 -196
  315. data/grammars/source.opal.json +1 -410
  316. data/grammars/source.opalsysdefs.json +1 -66
  317. data/grammars/source.openbsd-pkg.contents.json +1 -128
  318. data/grammars/source.opencobol.json +1 -62
  319. data/grammars/source.opentype.json +1 -448
  320. data/grammars/source.opts.json +1 -108
  321. data/grammars/source.ox.json +1 -89
  322. data/grammars/source.oz.json +1 -77
  323. data/grammars/source.p4.json +1 -122
  324. data/grammars/source.paket.dependencies.json +1 -0
  325. data/grammars/source.paket.lock.json +1 -0
  326. data/grammars/source.pan.json +1 -706
  327. data/grammars/source.papyrus.skyrim.json +1 -1272
  328. data/grammars/source.parrot.pir.json +1 -145
  329. data/grammars/source.pascal.json +1 -143
  330. data/grammars/source.pawn.json +1 -1194
  331. data/grammars/source.pcb.board.json +1 -285
  332. data/grammars/source.pcb.schematic.json +1 -424
  333. data/grammars/source.pcb.sexp.json +1 -232
  334. data/grammars/source.pep8.json +1 -118
  335. data/grammars/source.perl.6.json +1 -309
  336. data/grammars/source.perl.json +1 -2519
  337. data/grammars/source.php.zephir.json +1 -353
  338. data/grammars/source.pic.json +1 -908
  339. data/grammars/source.pig_latin.json +1 -168
  340. data/grammars/source.pike.json +1 -49
  341. data/grammars/source.plist.json +1 -336
  342. data/grammars/source.po.json +1 -222
  343. data/grammars/source.pogoscript.json +1 -79
  344. data/grammars/source.pony.json +1 -245
  345. data/grammars/source.postcss.json +1 -370
  346. data/grammars/source.postscript.json +1 -477
  347. data/grammars/source.pov-ray sdl.json +1 -82
  348. data/grammars/source.powershell.json +1 -981
  349. data/grammars/source.prisma.json +1 -435
  350. data/grammars/source.processing.json +1 -872
  351. data/grammars/source.prolog.eclipse.json +1 -201
  352. data/grammars/source.prolog.json +1 -286
  353. data/grammars/source.protobuf.json +1 -471
  354. data/grammars/source.puppet.json +1 -433
  355. data/grammars/source.purescript.json +1 -861
  356. data/grammars/source.pyjade.json +1 -996
  357. data/grammars/source.python.django.json +1 -29
  358. data/grammars/source.python.json +1 -5292
  359. data/grammars/source.python.salt.json +1 -9
  360. data/grammars/source.q.json +1 -215
  361. data/grammars/source.q_output.json +1 -348
  362. data/grammars/source.qasm.json +1 -66
  363. data/grammars/source.ql.json +1 -1408
  364. data/grammars/source.qmake.json +1 -210
  365. data/grammars/source.qml.json +1 -174
  366. data/grammars/source.qsharp.json +1 -120
  367. data/grammars/source.quake.json +1 -44
  368. data/grammars/source.quoting.raku.json +1 -0
  369. data/grammars/source.r.json +1 -194
  370. data/grammars/source.racket.json +1 -98
  371. data/grammars/source.raku.json +1 -0
  372. data/grammars/source.rascal.json +1 -283
  373. data/grammars/source.reason.hover.type.json +1 -14
  374. data/grammars/source.reason.json +1 -3382
  375. data/grammars/source.rebol.json +1 -637
  376. data/grammars/source.red.json +1 -644
  377. data/grammars/source.reg.json +1 -159
  378. data/grammars/source.regexp.extended.json +1 -558
  379. data/grammars/source.regexp.json +1 -1434
  380. data/grammars/source.regexp.python.json +1 -490
  381. data/grammars/source.regexp.raku.json +1 -0
  382. data/grammars/source.regexp.spin.json +1 -179
  383. data/grammars/source.rego.json +1 -124
  384. data/grammars/source.renpy.json +1 -1948
  385. data/grammars/source.rescript.json +1 -0
  386. data/grammars/source.rexx.json +1 -52
  387. data/grammars/source.ring.json +1 -247
  388. data/grammars/source.rpm-spec.json +1 -765
  389. data/grammars/source.ruby.gemfile.json +1 -24
  390. data/grammars/source.ruby.json +1 -2605
  391. data/grammars/source.ruby.rspec.cucumber.steps.json +1 -261
  392. data/grammars/source.rust.json +1 -629
  393. data/grammars/source.sas.json +1 -286
  394. data/grammars/source.sass.json +1 -1089
  395. data/grammars/source.sassdoc.json +1 -346
  396. data/grammars/source.scad.json +1 -145
  397. data/grammars/source.scala.json +1 -1121
  398. data/grammars/source.scaml.json +1 -451
  399. data/grammars/source.scheme.json +1 -353
  400. data/grammars/source.scilab.json +1 -96
  401. data/grammars/source.sdbl.json +1 -90
  402. data/grammars/source.sed.json +1 -1520
  403. data/grammars/source.shaderlab.json +1 -198
  404. data/grammars/source.shell.json +1 -1272
  405. data/grammars/source.shen.json +1 -143
  406. data/grammars/source.sieve.json +1 -383
  407. data/grammars/source.slice.json +1 -2755
  408. data/grammars/source.smali.json +1 -1610
  409. data/grammars/source.smalltalk.json +1 -187
  410. data/grammars/source.smpl.json +1 -314
  411. data/grammars/source.smt.json +1 -158
  412. data/grammars/source.solidity.json +1 -189
  413. data/grammars/source.sourcepawn.json +1 -651
  414. data/grammars/source.sparql.json +1 -18
  415. data/grammars/source.spin.json +1 -916
  416. data/grammars/source.sqf.json +1 -111
  417. data/grammars/source.sql.json +1 -459
  418. data/grammars/source.ssh-config.json +1 -97
  419. data/grammars/source.stan.json +1 -388
  420. data/grammars/source.stata.json +1 -197
  421. data/grammars/source.strings.json +1 -49
  422. data/grammars/source.stylus.json +1 -1018
  423. data/grammars/source.supercollider.json +1 -93
  424. data/grammars/source.svelte.json +1 -827
  425. data/grammars/source.swift.json +1 -3134
  426. data/grammars/source.sy.json +1 -2954
  427. data/grammars/source.systemverilog.json +1 -1036
  428. data/grammars/source.tags.json +1 -266
  429. data/grammars/source.tcl.json +1 -260
  430. data/grammars/source.tea.json +1 -174
  431. data/grammars/source.terra.json +1 -138
  432. data/grammars/source.terraform.json +1 -694
  433. data/grammars/source.thrift.json +1 -698
  434. data/grammars/source.tl.json +1 -259
  435. data/grammars/source.tla.json +1 -140
  436. data/grammars/source.tnsaudit.json +1 -256
  437. data/grammars/source.toc.json +1 -52
  438. data/grammars/source.toml.json +1 -426
  439. data/grammars/source.ts.json +1 -5581
  440. data/grammars/source.tsql.json +1 -507
  441. data/grammars/source.tsx.json +1 -5834
  442. data/grammars/source.turing.json +1 -1553
  443. data/grammars/source.turtle.json +1 -489
  444. data/grammars/source.txl.json +1 -48
  445. data/grammars/source.ucd.nameslist.json +1 -444
  446. data/grammars/source.ucd.unidata.json +1 -570
  447. data/grammars/source.ucfconstraints.json +1 -67
  448. data/grammars/source.ur.json +1 -31
  449. data/grammars/source.v.json +1 -1010
  450. data/grammars/source.vala.json +1 -800
  451. data/grammars/source.varnish.vcl.json +1 -331
  452. data/grammars/source.vbnet.json +1 -239
  453. data/grammars/source.verilog.json +1 -296
  454. data/grammars/source.vhdl.json +1 -1374
  455. data/grammars/source.vim-snippet.json +1 -645
  456. data/grammars/source.viml.json +1 -1197
  457. data/grammars/source.vtt.json +1 -702
  458. data/grammars/source.vyper.json +1 -213
  459. data/grammars/source.wavefront.mtl.json +1 -1190
  460. data/grammars/source.wavefront.obj.json +1 -1341
  461. data/grammars/source.wdl.json +1 -220
  462. data/grammars/source.webassembly.json +1 -349
  463. data/grammars/source.webidl.json +1 -807
  464. data/grammars/source.wgetrc.json +1 -1640
  465. data/grammars/source.wollok.json +1 -100
  466. data/grammars/source.wsd.json +1 -781
  467. data/grammars/source.x10.json +1 -64
  468. data/grammars/source.x86.json +1 -299
  469. data/grammars/source.x86asm.json +1 -42
  470. data/grammars/source.xc.json +1 -371
  471. data/grammars/source.xlfd.json +1 -462
  472. data/grammars/source.xojo.json +1 -85
  473. data/grammars/source.xq.json +1 -230
  474. data/grammars/source.xtend.json +1 -724
  475. data/grammars/source.yacc.json +1 -626
  476. data/grammars/source.yaml.json +1 -443
  477. data/grammars/source.yaml.salt.json +1 -345
  478. data/grammars/source.yang.json +1 -78
  479. data/grammars/source.yara.json +1 -99
  480. data/grammars/source.yasnippet.json +1 -377
  481. data/grammars/source.zap.json +1 -260
  482. data/grammars/source.zeek.json +1 -412
  483. data/grammars/source.zenscript.json +1 -282
  484. data/grammars/source.zig.json +1 -547
  485. data/grammars/source.zil.json +1 -750
  486. data/grammars/text.bibtex.json +1 -246
  487. data/grammars/text.cfml.basic.json +1 -735
  488. data/grammars/text.conllu.json +1 -45
  489. data/grammars/text.dfy.dafny.json +1 -188
  490. data/grammars/text.elixir.json +1 -52
  491. data/grammars/text.eml.basic.json +1 -296
  492. data/grammars/text.error-list.json +1 -53
  493. data/grammars/text.find-refs.json +1 -926
  494. data/grammars/text.gherkin.feature.json +1 -127
  495. data/grammars/text.haml.json +1 -518
  496. data/grammars/text.hamlc.json +1 -219
  497. data/grammars/text.html.asciidoc.json +1 -478
  498. data/grammars/text.html.asdoc.json +1 -529
  499. data/grammars/text.html.asp.json +1 -53
  500. data/grammars/text.html.basic.json +1 -908
  501. data/grammars/text.html.cfm.json +1 -802
  502. data/grammars/text.html.creole.json +1 -317
  503. data/grammars/text.html.cshtml.json +1 -356
  504. data/grammars/text.html.django.json +1 -63
  505. data/grammars/text.html.ecr.json +1 -48
  506. data/grammars/text.html.elixir.json +1 -21
  507. data/grammars/text.html.erb.json +1 -150
  508. data/grammars/text.html.erlang.yaws.json +1 -67
  509. data/grammars/text.html.factor.json +1 -19
  510. data/grammars/text.html.ftl.json +1 -76
  511. data/grammars/text.html.handlebars.json +1 -845
  512. data/grammars/text.html.javadoc.json +1 -426
  513. data/grammars/text.html.js.json +1 -24
  514. data/grammars/text.html.jsp.json +1 -1196
  515. data/grammars/text.html.liquid.json +1 -25
  516. data/grammars/text.html.mako.json +1 -726
  517. data/grammars/text.html.markdown.source.gfm.apib.json +1 -1298
  518. data/grammars/text.html.markdown.source.gfm.mson.json +1 -1156
  519. data/grammars/text.html.mediawiki.elm-build-output.json +1 -97
  520. data/grammars/text.html.mediawiki.elm-documentation.json +1 -17
  521. data/grammars/text.html.mediawiki.json +1 -946
  522. data/grammars/text.html.php.blade.json +1 -3833
  523. data/grammars/text.html.php.json +1 -2507
  524. data/grammars/text.html.riot.json +1 -788
  525. data/grammars/text.html.slash.json +1 -307
  526. data/grammars/text.html.smarty.json +1 -232
  527. data/grammars/text.html.soy.json +1 -606
  528. data/grammars/text.html.ssp.json +1 -43
  529. data/grammars/text.html.tcl.json +1 -37
  530. data/grammars/text.html.twig.json +1 -1344
  531. data/grammars/text.html.vue.json +1 -963
  532. data/grammars/text.idl-idldoc.json +1 -10
  533. data/grammars/text.jade.json +1 -963
  534. data/grammars/text.junit-test-report.json +1 -89
  535. data/grammars/text.log.latex.json +1 -84
  536. data/grammars/text.marko.json +1 -1662
  537. data/grammars/text.muse.json +1 -1471
  538. data/grammars/text.openbsd-pkg.desc.json +1 -78
  539. data/grammars/text.plain.json +1 -18
  540. data/grammars/text.python.console.json +1 -21
  541. data/grammars/text.python.traceback.json +1 -43
  542. data/grammars/text.rdoc.json +1 -44
  543. data/grammars/text.restructuredtext.clean.json +1 -24
  544. data/grammars/text.restructuredtext.json +1 -1765
  545. data/grammars/text.robot.json +1 -63
  546. data/grammars/text.roff.json +1 -6927
  547. data/grammars/text.rtf.json +1 -148
  548. data/grammars/text.runoff.json +1 -308
  549. data/grammars/text.sfd.json +1 -292
  550. data/grammars/text.shell-session.json +1 -29
  551. data/grammars/text.slim.json +1 -527
  552. data/grammars/text.srt.json +1 -166
  553. data/grammars/text.tex.json +1 -264
  554. data/grammars/text.tex.latex.beamer.json +1 -57
  555. data/grammars/text.tex.latex.haskell.json +1 -1826
  556. data/grammars/text.tex.latex.json +1 -1003
  557. data/grammars/text.tex.latex.memoir.json +1 -129
  558. data/grammars/text.tex.latex.rd.json +1 -111
  559. data/grammars/text.texinfo.json +1 -1525
  560. data/grammars/text.vim-help.json +1 -383
  561. data/grammars/text.xml.ant.json +1 -195
  562. data/grammars/text.xml.flex-config.json +1 -2628
  563. data/grammars/text.xml.genshi.json +1 -28
  564. data/grammars/text.xml.json +1 -351
  565. data/grammars/text.xml.plist.json +1 -664
  566. data/grammars/text.xml.pom.json +1 -769
  567. data/grammars/text.xml.svg.json +1 -562
  568. data/grammars/text.xml.xsl.json +1 -88
  569. data/grammars/text.zone_file.json +1 -67
  570. data/grammars/version +1 -1
  571. data/lib/linguist/VERSION +1 -1
  572. data/lib/linguist/generic.yml +17 -0
  573. data/lib/linguist/heuristics.yml +37 -17
  574. data/lib/linguist/languages.json +1 -1
  575. data/lib/linguist/languages.yml +41 -2
  576. data/lib/linguist/linguist.bundle +0 -0
  577. data/lib/linguist/samples.json +1 -1
  578. data/lib/linguist/strategy/extension.rb +13 -5
  579. metadata +12 -6
  580. data/ext/linguist/strndup.c +0 -10
  581. data/grammars/source.perl6fe.json +0 -2769
  582. data/grammars/source.quoting.perl6fe.json +0 -2369
  583. data/grammars/source.regexp.perl6fe.json +0 -244
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 44e76c87180265b5183ed6101dd0eae4e4c937d0db6ff21394d5d05ae325fb84
4
- data.tar.gz: dcdc54d65f47aa2376b17fe2e4e656b029781217effce570752a0e4decfaf5fa
3
+ metadata.gz: bc2e70cf75288777900688592f416514a41b09306b508036a023e90aa5e09347
4
+ data.tar.gz: 18c9fa4f90edf906e38cd256eae2c305ea5ecaf1bb02232418c16aa1bbbe3105
5
5
  SHA512:
6
- metadata.gz: 668f294631e9db05cf5812be2176b4cd7b696ff4012177f48dcf91325c67f71654524d33932348f213017572ee2b72c58ba31541411e67dee78c5be32ede247e
7
- data.tar.gz: 9baa47b5b7ac2f52d0204079f5ece7de0ea97cd09be6d53857ac7d3b11da665eee10ebf10609464da91bf57c6a85bccffe90779e2f4debff7a33ad6aaf06a5f3
6
+ metadata.gz: d948e8f766af31caf5e7e4f0f88da761ea8592261159c3160bc93f6667569c5b8b7f91d799e807b5a2d523f35931b2f12ed894b89c5cff8be0d8ce30f7293244
7
+ data.tar.gz: da0c28eeb3a7a9e06785c4e1d8ec4f447b3acd53cc4a2712686bab595f150d62735f6848bbeb35d863d3e00af78ac2e474ee0e5c3319d12eb9980804100aaac2
@@ -7,12 +7,222 @@
7
7
 
8
8
  #define FLEX_SCANNER
9
9
  #define YY_FLEX_MAJOR_VERSION 2
10
- #define YY_FLEX_MINOR_VERSION 5
11
- #define YY_FLEX_SUBMINOR_VERSION 35
10
+ #define YY_FLEX_MINOR_VERSION 6
11
+ #define YY_FLEX_SUBMINOR_VERSION 4
12
12
  #if YY_FLEX_SUBMINOR_VERSION > 0
13
13
  #define FLEX_BETA
14
14
  #endif
15
15
 
16
+ #ifdef yy_create_buffer
17
+ #define linguist_yy_create_buffer_ALREADY_DEFINED
18
+ #else
19
+ #define yy_create_buffer linguist_yy_create_buffer
20
+ #endif
21
+
22
+ #ifdef yy_delete_buffer
23
+ #define linguist_yy_delete_buffer_ALREADY_DEFINED
24
+ #else
25
+ #define yy_delete_buffer linguist_yy_delete_buffer
26
+ #endif
27
+
28
+ #ifdef yy_scan_buffer
29
+ #define linguist_yy_scan_buffer_ALREADY_DEFINED
30
+ #else
31
+ #define yy_scan_buffer linguist_yy_scan_buffer
32
+ #endif
33
+
34
+ #ifdef yy_scan_string
35
+ #define linguist_yy_scan_string_ALREADY_DEFINED
36
+ #else
37
+ #define yy_scan_string linguist_yy_scan_string
38
+ #endif
39
+
40
+ #ifdef yy_scan_bytes
41
+ #define linguist_yy_scan_bytes_ALREADY_DEFINED
42
+ #else
43
+ #define yy_scan_bytes linguist_yy_scan_bytes
44
+ #endif
45
+
46
+ #ifdef yy_init_buffer
47
+ #define linguist_yy_init_buffer_ALREADY_DEFINED
48
+ #else
49
+ #define yy_init_buffer linguist_yy_init_buffer
50
+ #endif
51
+
52
+ #ifdef yy_flush_buffer
53
+ #define linguist_yy_flush_buffer_ALREADY_DEFINED
54
+ #else
55
+ #define yy_flush_buffer linguist_yy_flush_buffer
56
+ #endif
57
+
58
+ #ifdef yy_load_buffer_state
59
+ #define linguist_yy_load_buffer_state_ALREADY_DEFINED
60
+ #else
61
+ #define yy_load_buffer_state linguist_yy_load_buffer_state
62
+ #endif
63
+
64
+ #ifdef yy_switch_to_buffer
65
+ #define linguist_yy_switch_to_buffer_ALREADY_DEFINED
66
+ #else
67
+ #define yy_switch_to_buffer linguist_yy_switch_to_buffer
68
+ #endif
69
+
70
+ #ifdef yypush_buffer_state
71
+ #define linguist_yypush_buffer_state_ALREADY_DEFINED
72
+ #else
73
+ #define yypush_buffer_state linguist_yypush_buffer_state
74
+ #endif
75
+
76
+ #ifdef yypop_buffer_state
77
+ #define linguist_yypop_buffer_state_ALREADY_DEFINED
78
+ #else
79
+ #define yypop_buffer_state linguist_yypop_buffer_state
80
+ #endif
81
+
82
+ #ifdef yyensure_buffer_stack
83
+ #define linguist_yyensure_buffer_stack_ALREADY_DEFINED
84
+ #else
85
+ #define yyensure_buffer_stack linguist_yyensure_buffer_stack
86
+ #endif
87
+
88
+ #ifdef yylex
89
+ #define linguist_yylex_ALREADY_DEFINED
90
+ #else
91
+ #define yylex linguist_yylex
92
+ #endif
93
+
94
+ #ifdef yyrestart
95
+ #define linguist_yyrestart_ALREADY_DEFINED
96
+ #else
97
+ #define yyrestart linguist_yyrestart
98
+ #endif
99
+
100
+ #ifdef yylex_init
101
+ #define linguist_yylex_init_ALREADY_DEFINED
102
+ #else
103
+ #define yylex_init linguist_yylex_init
104
+ #endif
105
+
106
+ #ifdef yylex_init_extra
107
+ #define linguist_yylex_init_extra_ALREADY_DEFINED
108
+ #else
109
+ #define yylex_init_extra linguist_yylex_init_extra
110
+ #endif
111
+
112
+ #ifdef yylex_destroy
113
+ #define linguist_yylex_destroy_ALREADY_DEFINED
114
+ #else
115
+ #define yylex_destroy linguist_yylex_destroy
116
+ #endif
117
+
118
+ #ifdef yyget_debug
119
+ #define linguist_yyget_debug_ALREADY_DEFINED
120
+ #else
121
+ #define yyget_debug linguist_yyget_debug
122
+ #endif
123
+
124
+ #ifdef yyset_debug
125
+ #define linguist_yyset_debug_ALREADY_DEFINED
126
+ #else
127
+ #define yyset_debug linguist_yyset_debug
128
+ #endif
129
+
130
+ #ifdef yyget_extra
131
+ #define linguist_yyget_extra_ALREADY_DEFINED
132
+ #else
133
+ #define yyget_extra linguist_yyget_extra
134
+ #endif
135
+
136
+ #ifdef yyset_extra
137
+ #define linguist_yyset_extra_ALREADY_DEFINED
138
+ #else
139
+ #define yyset_extra linguist_yyset_extra
140
+ #endif
141
+
142
+ #ifdef yyget_in
143
+ #define linguist_yyget_in_ALREADY_DEFINED
144
+ #else
145
+ #define yyget_in linguist_yyget_in
146
+ #endif
147
+
148
+ #ifdef yyset_in
149
+ #define linguist_yyset_in_ALREADY_DEFINED
150
+ #else
151
+ #define yyset_in linguist_yyset_in
152
+ #endif
153
+
154
+ #ifdef yyget_out
155
+ #define linguist_yyget_out_ALREADY_DEFINED
156
+ #else
157
+ #define yyget_out linguist_yyget_out
158
+ #endif
159
+
160
+ #ifdef yyset_out
161
+ #define linguist_yyset_out_ALREADY_DEFINED
162
+ #else
163
+ #define yyset_out linguist_yyset_out
164
+ #endif
165
+
166
+ #ifdef yyget_leng
167
+ #define linguist_yyget_leng_ALREADY_DEFINED
168
+ #else
169
+ #define yyget_leng linguist_yyget_leng
170
+ #endif
171
+
172
+ #ifdef yyget_text
173
+ #define linguist_yyget_text_ALREADY_DEFINED
174
+ #else
175
+ #define yyget_text linguist_yyget_text
176
+ #endif
177
+
178
+ #ifdef yyget_lineno
179
+ #define linguist_yyget_lineno_ALREADY_DEFINED
180
+ #else
181
+ #define yyget_lineno linguist_yyget_lineno
182
+ #endif
183
+
184
+ #ifdef yyset_lineno
185
+ #define linguist_yyset_lineno_ALREADY_DEFINED
186
+ #else
187
+ #define yyset_lineno linguist_yyset_lineno
188
+ #endif
189
+
190
+ #ifdef yyget_column
191
+ #define linguist_yyget_column_ALREADY_DEFINED
192
+ #else
193
+ #define yyget_column linguist_yyget_column
194
+ #endif
195
+
196
+ #ifdef yyset_column
197
+ #define linguist_yyset_column_ALREADY_DEFINED
198
+ #else
199
+ #define yyset_column linguist_yyset_column
200
+ #endif
201
+
202
+ #ifdef yywrap
203
+ #define linguist_yywrap_ALREADY_DEFINED
204
+ #else
205
+ #define yywrap linguist_yywrap
206
+ #endif
207
+
208
+ #ifdef yyalloc
209
+ #define linguist_yyalloc_ALREADY_DEFINED
210
+ #else
211
+ #define yyalloc linguist_yyalloc
212
+ #endif
213
+
214
+ #ifdef yyrealloc
215
+ #define linguist_yyrealloc_ALREADY_DEFINED
216
+ #else
217
+ #define yyrealloc linguist_yyrealloc
218
+ #endif
219
+
220
+ #ifdef yyfree
221
+ #define linguist_yyfree_ALREADY_DEFINED
222
+ #else
223
+ #define yyfree linguist_yyfree
224
+ #endif
225
+
16
226
  /* First, we deal with platform-specific or compiler-specific issues. */
17
227
 
18
228
  /* begin standard C headers. */
@@ -46,7 +256,6 @@ typedef int16_t flex_int16_t;
46
256
  typedef uint16_t flex_uint16_t;
47
257
  typedef int32_t flex_int32_t;
48
258
  typedef uint32_t flex_uint32_t;
49
- typedef uint64_t flex_uint64_t;
50
259
  #else
51
260
  typedef signed char flex_int8_t;
52
261
  typedef short int flex_int16_t;
@@ -54,7 +263,6 @@ typedef int flex_int32_t;
54
263
  typedef unsigned char flex_uint8_t;
55
264
  typedef unsigned short int flex_uint16_t;
56
265
  typedef unsigned int flex_uint32_t;
57
- #endif /* ! C99 */
58
266
 
59
267
  /* Limits of integral types. */
60
268
  #ifndef INT8_MIN
@@ -85,38 +293,32 @@ typedef unsigned int flex_uint32_t;
85
293
  #define UINT32_MAX (4294967295U)
86
294
  #endif
87
295
 
88
- #endif /* ! FLEXINT_H */
89
-
90
- #ifdef __cplusplus
91
-
92
- /* The "const" storage-class-modifier is valid. */
93
- #define YY_USE_CONST
94
-
95
- #else /* ! __cplusplus */
296
+ #ifndef SIZE_MAX
297
+ #define SIZE_MAX (~(size_t)0)
298
+ #endif
96
299
 
97
- /* C99 requires __STDC__ to be defined as 1. */
98
- #if defined (__STDC__)
300
+ #endif /* ! C99 */
99
301
 
100
- #define YY_USE_CONST
302
+ #endif /* ! FLEXINT_H */
101
303
 
102
- #endif /* defined (__STDC__) */
103
- #endif /* ! __cplusplus */
304
+ /* begin standard C++ headers. */
104
305
 
105
- #ifdef YY_USE_CONST
306
+ /* TODO: this is always defined, so inline it */
106
307
  #define yyconst const
308
+
309
+ #if defined(__GNUC__) && __GNUC__ >= 3
310
+ #define yynoreturn __attribute__((__noreturn__))
107
311
  #else
108
- #define yyconst
312
+ #define yynoreturn
109
313
  #endif
110
314
 
111
315
  /* Returned upon end-of-file. */
112
316
  #define YY_NULL 0
113
317
 
114
- /* Promotes a possibly negative, possibly signed char to an unsigned
115
- * integer for use as an array index. If the signed char is negative,
116
- * we want to instead treat it as an 8-bit unsigned char, hence the
117
- * double cast.
318
+ /* Promotes a possibly negative, possibly signed char to an
319
+ * integer in range [0..255] for use as an array index.
118
320
  */
119
- #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
321
+ #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
120
322
 
121
323
  /* An opaque pointer. */
122
324
  #ifndef YY_TYPEDEF_YY_SCANNER_T
@@ -140,25 +342,29 @@ typedef void* yyscan_t;
140
342
  * definition of BEGIN.
141
343
  */
142
344
  #define BEGIN yyg->yy_start = 1 + 2 *
143
-
144
345
  /* Translate the current start state into a value that can be later handed
145
346
  * to BEGIN to return to the state. The YYSTATE alias is for lex
146
347
  * compatibility.
147
348
  */
148
349
  #define YY_START ((yyg->yy_start - 1) / 2)
149
350
  #define YYSTATE YY_START
150
-
151
351
  /* Action number for EOF rule of a given start state. */
152
352
  #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
153
-
154
353
  /* Special action meaning "start processing a new file". */
155
- #define YY_NEW_FILE linguist_yyrestart(yyin ,yyscanner )
156
-
354
+ #define YY_NEW_FILE yyrestart( yyin , yyscanner )
157
355
  #define YY_END_OF_BUFFER_CHAR 0
158
356
 
159
357
  /* Size of default input buffer. */
160
358
  #ifndef YY_BUF_SIZE
359
+ #ifdef __ia64__
360
+ /* On IA-64, the buffer size is 16k, not 8k.
361
+ * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
362
+ * Ditto for the __ia64__ case accordingly.
363
+ */
364
+ #define YY_BUF_SIZE 32768
365
+ #else
161
366
  #define YY_BUF_SIZE 16384
367
+ #endif /* __ia64__ */
162
368
  #endif
163
369
 
164
370
  /* The state buf must be large enough to hold one state per character in the main buffer.
@@ -178,8 +384,9 @@ typedef size_t yy_size_t;
178
384
  #define EOB_ACT_CONTINUE_SCAN 0
179
385
  #define EOB_ACT_END_OF_FILE 1
180
386
  #define EOB_ACT_LAST_MATCH 2
181
-
387
+
182
388
  #define YY_LESS_LINENO(n)
389
+ #define YY_LINENO_REWIND_TO(ptr)
183
390
 
184
391
  /* Return all but the first "n" matched characters back to the input stream. */
185
392
  #define yyless(n) \
@@ -194,7 +401,6 @@ typedef size_t yy_size_t;
194
401
  YY_DO_BEFORE_ACTION; /* set up yytext again */ \
195
402
  } \
196
403
  while ( 0 )
197
-
198
404
  #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
199
405
 
200
406
  #ifndef YY_STRUCT_YY_BUFFER_STATE
@@ -209,12 +415,12 @@ struct yy_buffer_state
209
415
  /* Size of input buffer in bytes, not including room for EOB
210
416
  * characters.
211
417
  */
212
- yy_size_t yy_buf_size;
418
+ int yy_buf_size;
213
419
 
214
420
  /* Number of characters read into yy_ch_buf, not including EOB
215
421
  * characters.
216
422
  */
217
- yy_size_t yy_n_chars;
423
+ int yy_n_chars;
218
424
 
219
425
  /* Whether we "own" the buffer - i.e., we know we created it,
220
426
  * and can realloc() it to grow it, and should free() it to
@@ -237,7 +443,7 @@ struct yy_buffer_state
237
443
 
238
444
  int yy_bs_lineno; /**< The line count. */
239
445
  int yy_bs_column; /**< The column count. */
240
-
446
+
241
447
  /* Whether to try to fill the input buffer when we reach the
242
448
  * end of it.
243
449
  */
@@ -254,7 +460,7 @@ struct yy_buffer_state
254
460
  * possible backing-up.
255
461
  *
256
462
  * When we actually see the EOF, we change the status to "new"
257
- * (via linguist_yyrestart()), so that the user can continue scanning by
463
+ * (via yyrestart()), so that the user can continue scanning by
258
464
  * just pointing yyin at a new input file.
259
465
  */
260
466
  #define YY_BUFFER_EOF_PENDING 2
@@ -271,81 +477,74 @@ struct yy_buffer_state
271
477
  #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
272
478
  ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
273
479
  : NULL)
274
-
275
480
  /* Same as previous macro, but useful when we know that the buffer stack is not
276
481
  * NULL or when we need an lvalue. For internal use only.
277
482
  */
278
483
  #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
279
484
 
280
- void linguist_yyrestart (FILE *input_file ,yyscan_t yyscanner );
281
- void linguist_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
282
- YY_BUFFER_STATE linguist_yy_create_buffer (FILE *file,int size ,yyscan_t yyscanner );
283
- void linguist_yy_delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
284
- void linguist_yy_flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
285
- void linguist_yypush_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
286
- void linguist_yypop_buffer_state (yyscan_t yyscanner );
287
-
288
- static void linguist_yyensure_buffer_stack (yyscan_t yyscanner );
289
- static void linguist_yy_load_buffer_state (yyscan_t yyscanner );
290
- static void linguist_yy_init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yyscanner );
291
-
292
- #define YY_FLUSH_BUFFER linguist_yy_flush_buffer(YY_CURRENT_BUFFER ,yyscanner)
485
+ void yyrestart ( FILE *input_file , yyscan_t yyscanner );
486
+ void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
487
+ YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size , yyscan_t yyscanner );
488
+ void yy_delete_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
489
+ void yy_flush_buffer ( YY_BUFFER_STATE b , yyscan_t yyscanner );
490
+ void yypush_buffer_state ( YY_BUFFER_STATE new_buffer , yyscan_t yyscanner );
491
+ void yypop_buffer_state ( yyscan_t yyscanner );
293
492
 
294
- YY_BUFFER_STATE linguist_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
295
- YY_BUFFER_STATE linguist_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
296
- YY_BUFFER_STATE linguist_yy_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner );
493
+ static void yyensure_buffer_stack ( yyscan_t yyscanner );
494
+ static void yy_load_buffer_state ( yyscan_t yyscanner );
495
+ static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file , yyscan_t yyscanner );
496
+ #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER , yyscanner)
297
497
 
298
- void *linguist_yyalloc (yy_size_t ,yyscan_t yyscanner );
299
- void *linguist_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner );
300
- void linguist_yyfree (void * ,yyscan_t yyscanner );
498
+ YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size , yyscan_t yyscanner );
499
+ YY_BUFFER_STATE yy_scan_string ( const char *yy_str , yyscan_t yyscanner );
500
+ YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len , yyscan_t yyscanner );
301
501
 
302
- #define yy_new_buffer linguist_yy_create_buffer
502
+ void *yyalloc ( yy_size_t , yyscan_t yyscanner );
503
+ void *yyrealloc ( void *, yy_size_t , yyscan_t yyscanner );
504
+ void yyfree ( void * , yyscan_t yyscanner );
303
505
 
506
+ #define yy_new_buffer yy_create_buffer
304
507
  #define yy_set_interactive(is_interactive) \
305
508
  { \
306
509
  if ( ! YY_CURRENT_BUFFER ){ \
307
- linguist_yyensure_buffer_stack (yyscanner); \
510
+ yyensure_buffer_stack (yyscanner); \
308
511
  YY_CURRENT_BUFFER_LVALUE = \
309
- linguist_yy_create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
512
+ yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner); \
310
513
  } \
311
514
  YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
312
515
  }
313
-
314
516
  #define yy_set_bol(at_bol) \
315
517
  { \
316
518
  if ( ! YY_CURRENT_BUFFER ){\
317
- linguist_yyensure_buffer_stack (yyscanner); \
519
+ yyensure_buffer_stack (yyscanner); \
318
520
  YY_CURRENT_BUFFER_LVALUE = \
319
- linguist_yy_create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
521
+ yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner); \
320
522
  } \
321
523
  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
322
524
  }
323
-
324
525
  #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
325
526
 
326
527
  /* Begin user sect3 */
327
-
328
- typedef unsigned char YY_CHAR;
528
+ typedef flex_uint8_t YY_CHAR;
329
529
 
330
530
  typedef int yy_state_type;
331
531
 
332
532
  #define yytext_ptr yytext_r
333
533
 
334
- static yy_state_type yy_get_previous_state (yyscan_t yyscanner );
335
- static yy_state_type yy_try_NUL_trans (yy_state_type current_state ,yyscan_t yyscanner);
336
- static int yy_get_next_buffer (yyscan_t yyscanner );
337
- static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
534
+ static yy_state_type yy_get_previous_state ( yyscan_t yyscanner );
535
+ static yy_state_type yy_try_NUL_trans ( yy_state_type current_state , yyscan_t yyscanner);
536
+ static int yy_get_next_buffer ( yyscan_t yyscanner );
537
+ static void yynoreturn yy_fatal_error ( const char* msg , yyscan_t yyscanner );
338
538
 
339
539
  /* Done after the current pattern has been matched and before the
340
540
  * corresponding action - sets up yytext.
341
541
  */
342
542
  #define YY_DO_BEFORE_ACTION \
343
543
  yyg->yytext_ptr = yy_bp; \
344
- yyleng = (yy_size_t) (yy_cp - yy_bp); \
544
+ yyleng = (int) (yy_cp - yy_bp); \
345
545
  yyg->yy_hold_char = *yy_cp; \
346
546
  *yy_cp = '\0'; \
347
547
  yyg->yy_c_buf_p = yy_cp;
348
-
349
548
  #define YY_NUM_RULES 31
350
549
  #define YY_END_OF_BUFFER 32
351
550
  /* This struct is not used in this scanner,
@@ -355,7 +554,7 @@ struct yy_trans_info
355
554
  flex_int32_t yy_verify;
356
555
  flex_int32_t yy_nxt;
357
556
  };
358
- static yyconst flex_int16_t yy_accept[114] =
557
+ static const flex_int16_t yy_accept[114] =
359
558
  { 0,
360
559
  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
361
560
  0, 0, 0, 0, 0, 0, 32, 30, 17, 28,
@@ -372,7 +571,7 @@ static yyconst flex_int16_t yy_accept[114] =
372
571
  1, 0, 0
373
572
  } ;
374
573
 
375
- static yyconst flex_int32_t yy_ec[256] =
574
+ static const YY_CHAR yy_ec[256] =
376
575
  { 0,
377
576
  1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
378
577
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -404,7 +603,7 @@ static yyconst flex_int32_t yy_ec[256] =
404
603
  1, 1, 1, 1, 1
405
604
  } ;
406
605
 
407
- static yyconst flex_int32_t yy_meta[41] =
606
+ static const YY_CHAR yy_meta[41] =
408
607
  { 0,
409
608
  1, 2, 3, 2, 4, 5, 6, 1, 1, 5,
410
609
  1, 1, 6, 1, 4, 7, 8, 9, 9, 1,
@@ -412,7 +611,7 @@ static yyconst flex_int32_t yy_meta[41] =
412
611
  9, 1, 1, 9, 9, 9, 9, 1, 1, 1
413
612
  } ;
414
613
 
415
- static yyconst flex_int16_t yy_base[125] =
614
+ static const flex_int16_t yy_base[125] =
416
615
  { 0,
417
616
  0, 39, 39, 59, 214, 213, 210, 209, 208, 207,
418
617
  208, 207, 213, 212, 207, 206, 215, 358, 208, 0,
@@ -430,7 +629,7 @@ static yyconst flex_int16_t yy_base[125] =
430
629
  326, 328, 337, 347
431
630
  } ;
432
631
 
433
- static yyconst flex_int16_t yy_def[125] =
632
+ static const flex_int16_t yy_def[125] =
434
633
  { 0,
435
634
  113, 1, 114, 114, 115, 115, 115, 115, 115, 115,
436
635
  115, 115, 115, 115, 115, 115, 113, 113, 113, 116,
@@ -448,7 +647,7 @@ static yyconst flex_int16_t yy_def[125] =
448
647
  113, 113, 113, 113
449
648
  } ;
450
649
 
451
- static yyconst flex_int16_t yy_nxt[399] =
650
+ static const flex_int16_t yy_nxt[399] =
452
651
  { 0,
453
652
  18, 18, 18, 18, 18, 19, 20, 21, 22, 23,
454
653
  24, 25, 26, 21, 21, 20, 27, 28, 29, 25,
@@ -496,7 +695,7 @@ static yyconst flex_int16_t yy_nxt[399] =
496
695
 
497
696
  } ;
498
697
 
499
- static yyconst flex_int16_t yy_chk[399] =
698
+ static const flex_int16_t yy_chk[399] =
500
699
  { 0,
501
700
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
502
701
  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -554,12 +753,37 @@ static yyconst flex_int16_t yy_chk[399] =
554
753
  #line 1 "tokenizer.l"
555
754
  #line 2 "tokenizer.l"
556
755
 
557
- #include "linguist.h"
756
+ #include "ruby.h"
558
757
 
559
- #define feed_token(tok, typ) do { \
560
- yyextra->token = (tok); \
561
- yyextra->type = (typ); \
562
- } while (0)
758
+ // Anything longer is unlikely to be useful.
759
+ #define MAX_TOKEN_LEN 32
760
+
761
+ #define FEED2(s, l) do { \
762
+ const char* __s = (s); \
763
+ const size_t __l = (l); \
764
+ if ((__l) > MAX_TOKEN_LEN) \
765
+ break; \
766
+ *yyextra = rb_str_new(__s, __l); \
767
+ } while(0)
768
+
769
+ #define FEED1(s) FEED2(s, strlen(s))
770
+
771
+ #define FEED() FEED2(yytext, yyleng)
772
+
773
+ #define FEED_SHEBANG(s) do { \
774
+ const size_t __l = strlen(s); \
775
+ if (__l > MAX_TOKEN_LEN) \
776
+ break; \
777
+ *yyextra = rb_str_new("SHEBANG#!", sizeof("SHEBANG#!") - 1); \
778
+ rb_str_cat(*yyextra, s, __l); \
779
+ } while(0)
780
+
781
+ #define FEED_SGML() do { \
782
+ if (yyleng > MAX_TOKEN_LEN) \
783
+ break; \
784
+ *yyextra = rb_str_new(yytext, yyleng); \
785
+ rb_str_cat(*yyextra, ">", 1); \
786
+ } while(0)
563
787
 
564
788
  #define eat_until_eol() do { \
565
789
  int c; \
@@ -584,8 +808,9 @@ static yyconst flex_int16_t yy_chk[399] =
584
808
  return 0; \
585
809
  } while (0)
586
810
 
811
+ #line 812 "lex.linguist_yy.c"
587
812
 
588
- #line 589 "lex.linguist_yy.c"
813
+ #line 814 "lex.linguist_yy.c"
589
814
 
590
815
  #define INITIAL 0
591
816
  #define sgml 1
@@ -604,7 +829,7 @@ static yyconst flex_int16_t yy_chk[399] =
604
829
  #include <unistd.h>
605
830
  #endif
606
831
 
607
- #define YY_EXTRA_TYPE struct tokenizer_extra *
832
+ #define YY_EXTRA_TYPE VALUE*
608
833
 
609
834
  /* Holds the entire state of the reentrant scanner. */
610
835
  struct yyguts_t
@@ -619,8 +844,8 @@ struct yyguts_t
619
844
  size_t yy_buffer_stack_max; /**< capacity of stack. */
620
845
  YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */
621
846
  char yy_hold_char;
622
- yy_size_t yy_n_chars;
623
- yy_size_t yyleng_r;
847
+ int yy_n_chars;
848
+ int yyleng_r;
624
849
  char *yy_c_buf_p;
625
850
  int yy_init;
626
851
  int yy_start;
@@ -640,40 +865,44 @@ struct yyguts_t
640
865
 
641
866
  }; /* end struct yyguts_t */
642
867
 
643
- static int yy_init_globals (yyscan_t yyscanner );
868
+ static int yy_init_globals ( yyscan_t yyscanner );
644
869
 
645
- int linguist_yylex_init (yyscan_t* scanner);
870
+ int yylex_init (yyscan_t* scanner);
646
871
 
647
- int linguist_yylex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
872
+ int yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);
648
873
 
649
874
  /* Accessor methods to globals.
650
875
  These are made visible to non-reentrant scanners for convenience. */
651
876
 
652
- int linguist_yylex_destroy (yyscan_t yyscanner );
877
+ int yylex_destroy ( yyscan_t yyscanner );
653
878
 
654
- int linguist_yyget_debug (yyscan_t yyscanner );
879
+ int yyget_debug ( yyscan_t yyscanner );
655
880
 
656
- void linguist_yyset_debug (int debug_flag ,yyscan_t yyscanner );
881
+ void yyset_debug ( int debug_flag , yyscan_t yyscanner );
657
882
 
658
- YY_EXTRA_TYPE linguist_yyget_extra (yyscan_t yyscanner );
883
+ YY_EXTRA_TYPE yyget_extra ( yyscan_t yyscanner );
659
884
 
660
- void linguist_yyset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
885
+ void yyset_extra ( YY_EXTRA_TYPE user_defined , yyscan_t yyscanner );
661
886
 
662
- FILE *linguist_yyget_in (yyscan_t yyscanner );
887
+ FILE *yyget_in ( yyscan_t yyscanner );
663
888
 
664
- void linguist_yyset_in (FILE * in_str ,yyscan_t yyscanner );
889
+ void yyset_in ( FILE * _in_str , yyscan_t yyscanner );
665
890
 
666
- FILE *linguist_yyget_out (yyscan_t yyscanner );
891
+ FILE *yyget_out ( yyscan_t yyscanner );
667
892
 
668
- void linguist_yyset_out (FILE * out_str ,yyscan_t yyscanner );
893
+ void yyset_out ( FILE * _out_str , yyscan_t yyscanner );
669
894
 
670
- yy_size_t linguist_yyget_leng (yyscan_t yyscanner );
895
+ int yyget_leng ( yyscan_t yyscanner );
671
896
 
672
- char *linguist_yyget_text (yyscan_t yyscanner );
897
+ char *yyget_text ( yyscan_t yyscanner );
673
898
 
674
- int linguist_yyget_lineno (yyscan_t yyscanner );
899
+ int yyget_lineno ( yyscan_t yyscanner );
675
900
 
676
- void linguist_yyset_lineno (int line_number ,yyscan_t yyscanner );
901
+ void yyset_lineno ( int _line_number , yyscan_t yyscanner );
902
+
903
+ int yyget_column ( yyscan_t yyscanner );
904
+
905
+ void yyset_column ( int _column_no , yyscan_t yyscanner );
677
906
 
678
907
  /* Macros after this point can all be overridden by user definitions in
679
908
  * section 1.
@@ -681,33 +910,41 @@ void linguist_yyset_lineno (int line_number ,yyscan_t yyscanner );
681
910
 
682
911
  #ifndef YY_SKIP_YYWRAP
683
912
  #ifdef __cplusplus
684
- extern "C" int linguist_yywrap (yyscan_t yyscanner );
913
+ extern "C" int yywrap ( yyscan_t yyscanner );
685
914
  #else
686
- extern int linguist_yywrap (yyscan_t yyscanner );
915
+ extern int yywrap ( yyscan_t yyscanner );
687
916
  #endif
688
917
  #endif
689
918
 
919
+ #ifndef YY_NO_UNPUT
920
+
921
+ #endif
922
+
690
923
  #ifndef yytext_ptr
691
- static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
924
+ static void yy_flex_strncpy ( char *, const char *, int , yyscan_t yyscanner);
692
925
  #endif
693
926
 
694
927
  #ifdef YY_NEED_STRLEN
695
- static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
928
+ static int yy_flex_strlen ( const char * , yyscan_t yyscanner);
696
929
  #endif
697
930
 
698
931
  #ifndef YY_NO_INPUT
699
-
700
932
  #ifdef __cplusplus
701
- static int yyinput (yyscan_t yyscanner );
933
+ static int yyinput ( yyscan_t yyscanner );
702
934
  #else
703
- static int input (yyscan_t yyscanner );
935
+ static int input ( yyscan_t yyscanner );
704
936
  #endif
705
937
 
706
938
  #endif
707
939
 
708
940
  /* Amount of stuff to slurp up with each read. */
709
941
  #ifndef YY_READ_BUF_SIZE
942
+ #ifdef __ia64__
943
+ /* On IA-64, the buffer size is 16k, not 8k */
944
+ #define YY_READ_BUF_SIZE 16384
945
+ #else
710
946
  #define YY_READ_BUF_SIZE 8192
947
+ #endif /* __ia64__ */
711
948
  #endif
712
949
 
713
950
  /* Copy whatever the last rule matched to the standard output. */
@@ -715,7 +952,7 @@ static int input (yyscan_t yyscanner );
715
952
  /* This used to be an fputs(), but since the string might contain NUL's,
716
953
  * we now use fwrite().
717
954
  */
718
- #define ECHO fwrite( yytext, yyleng, 1, yyout )
955
+ #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
719
956
  #endif
720
957
 
721
958
  /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
@@ -726,7 +963,7 @@ static int input (yyscan_t yyscanner );
726
963
  if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
727
964
  { \
728
965
  int c = '*'; \
729
- yy_size_t n; \
966
+ int n; \
730
967
  for ( n = 0; n < max_size && \
731
968
  (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
732
969
  buf[n] = (char) c; \
@@ -739,7 +976,7 @@ static int input (yyscan_t yyscanner );
739
976
  else \
740
977
  { \
741
978
  errno=0; \
742
- while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
979
+ while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
743
980
  { \
744
981
  if( errno != EINTR) \
745
982
  { \
@@ -780,9 +1017,9 @@ static int input (yyscan_t yyscanner );
780
1017
  #ifndef YY_DECL
781
1018
  #define YY_DECL_IS_OURS 1
782
1019
 
783
- extern int linguist_yylex (yyscan_t yyscanner);
1020
+ extern int yylex (yyscan_t yyscanner);
784
1021
 
785
- #define YY_DECL int linguist_yylex (yyscan_t yyscanner)
1022
+ #define YY_DECL int yylex (yyscan_t yyscanner)
786
1023
  #endif /* !YY_DECL */
787
1024
 
788
1025
  /* Code executed at the beginning of each rule, after yytext and yyleng
@@ -794,7 +1031,7 @@ extern int linguist_yylex (yyscan_t yyscanner);
794
1031
 
795
1032
  /* Code executed at the end of each rule. */
796
1033
  #ifndef YY_BREAK
797
- #define YY_BREAK break;
1034
+ #define YY_BREAK /*LINTED*/break;
798
1035
  #endif
799
1036
 
800
1037
  #define YY_RULE_SETUP \
@@ -807,16 +1044,11 @@ extern int linguist_yylex (yyscan_t yyscanner);
807
1044
  */
808
1045
  YY_DECL
809
1046
  {
810
- register yy_state_type yy_current_state;
811
- register char *yy_cp, *yy_bp;
812
- register int yy_act;
1047
+ yy_state_type yy_current_state;
1048
+ char *yy_cp, *yy_bp;
1049
+ int yy_act;
813
1050
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
814
1051
 
815
- #line 38 "tokenizer.l"
816
-
817
-
818
- #line 819 "lex.linguist_yy.c"
819
-
820
1052
  if ( !yyg->yy_init )
821
1053
  {
822
1054
  yyg->yy_init = 1;
@@ -835,15 +1067,21 @@ YY_DECL
835
1067
  yyout = stdout;
836
1068
 
837
1069
  if ( ! YY_CURRENT_BUFFER ) {
838
- linguist_yyensure_buffer_stack (yyscanner);
1070
+ yyensure_buffer_stack (yyscanner);
839
1071
  YY_CURRENT_BUFFER_LVALUE =
840
- linguist_yy_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
1072
+ yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner);
841
1073
  }
842
1074
 
843
- linguist_yy_load_buffer_state(yyscanner );
1075
+ yy_load_buffer_state( yyscanner );
844
1076
  }
845
1077
 
846
- while ( 1 ) /* loops until end-of-file is reached */
1078
+ {
1079
+ #line 63 "tokenizer.l"
1080
+
1081
+
1082
+ #line 1083 "lex.linguist_yy.c"
1083
+
1084
+ while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
847
1085
  {
848
1086
  yy_cp = yyg->yy_c_buf_p;
849
1087
 
@@ -860,7 +1098,7 @@ YY_DECL
860
1098
  yy_match:
861
1099
  do
862
1100
  {
863
- register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1101
+ YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
864
1102
  if ( yy_accept[yy_current_state] )
865
1103
  {
866
1104
  yyg->yy_last_accepting_state = yy_current_state;
@@ -870,9 +1108,9 @@ yy_match:
870
1108
  {
871
1109
  yy_current_state = (int) yy_def[yy_current_state];
872
1110
  if ( yy_current_state >= 114 )
873
- yy_c = yy_meta[(unsigned int) yy_c];
1111
+ yy_c = yy_meta[yy_c];
874
1112
  }
875
- yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1113
+ yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
876
1114
  ++yy_cp;
877
1115
  }
878
1116
  while ( yy_current_state != 113 );
@@ -898,131 +1136,131 @@ do_action: /* This label is used only to access EOF actions. */
898
1136
  case 1:
899
1137
  /* rule 1 can match eol */
900
1138
  YY_RULE_SETUP
901
- #line 40 "tokenizer.l"
1139
+ #line 65 "tokenizer.l"
902
1140
  {
903
- const char *off = strrchr(yytext, ' ');
904
- if (!off)
905
- off = yytext;
906
- else
907
- ++off;
908
- feed_token(strdup(off), SHEBANG_TOKEN);
909
- eat_until_eol();
910
- return 1;
911
- }
1141
+ const char *off = strrchr(yytext, ' ');
1142
+ if (!off)
1143
+ off = yytext;
1144
+ else
1145
+ ++off;
1146
+ FEED_SHEBANG(off);
1147
+ eat_until_eol();
1148
+ return 1;
1149
+ }
912
1150
  YY_BREAK
913
1151
  case 2:
914
1152
  YY_RULE_SETUP
915
- #line 51 "tokenizer.l"
1153
+ #line 76 "tokenizer.l"
916
1154
  {
917
- const char *off = strrchr(yytext, '/');
918
- if (!off)
919
- off = yytext;
920
- else
921
- ++off;
922
- if (strcmp(off, "env") == 0) {
923
- eat_until_eol();
924
- } else {
925
- feed_token(strdup(off), SHEBANG_TOKEN);
926
- eat_until_eol();
927
- return 1;
928
- }
1155
+ const char *off = strrchr(yytext, '/');
1156
+ if (!off)
1157
+ off = yytext;
1158
+ else
1159
+ ++off;
1160
+ if (strcmp(off, "env") == 0) {
1161
+ eat_until_eol();
1162
+ } else {
1163
+ FEED_SHEBANG(off);
1164
+ eat_until_eol();
1165
+ return 1;
929
1166
  }
1167
+ }
930
1168
  YY_BREAK
931
1169
  case 3:
932
1170
  YY_RULE_SETUP
933
- #line 66 "tokenizer.l"
1171
+ #line 91 "tokenizer.l"
934
1172
  { /* nothing */ }
935
1173
  YY_BREAK
936
1174
  case 4:
937
1175
  YY_RULE_SETUP
938
- #line 68 "tokenizer.l"
1176
+ #line 93 "tokenizer.l"
939
1177
  { BEGIN(c_comment); }
940
1178
  YY_BREAK
941
1179
  /* See below for xml_comment start. */
942
1180
  case 5:
943
1181
  YY_RULE_SETUP
944
- #line 70 "tokenizer.l"
1182
+ #line 95 "tokenizer.l"
945
1183
  { BEGIN(haskell_comment); }
946
1184
  YY_BREAK
947
1185
  case 6:
948
1186
  YY_RULE_SETUP
949
- #line 71 "tokenizer.l"
1187
+ #line 96 "tokenizer.l"
950
1188
  { BEGIN(ocaml_comment); }
951
1189
  YY_BREAK
952
1190
  case 7:
953
1191
  YY_RULE_SETUP
954
- #line 72 "tokenizer.l"
1192
+ #line 97 "tokenizer.l"
955
1193
  { BEGIN(python_dcomment); }
956
1194
  YY_BREAK
957
1195
  case 8:
958
1196
  YY_RULE_SETUP
959
- #line 73 "tokenizer.l"
1197
+ #line 98 "tokenizer.l"
960
1198
  { BEGIN(python_scomment); }
961
1199
  YY_BREAK
962
1200
  case 9:
963
1201
  /* rule 9 can match eol */
964
1202
  YY_RULE_SETUP
965
- #line 75 "tokenizer.l"
1203
+ #line 100 "tokenizer.l"
966
1204
  { /* nothing */ }
967
1205
  YY_BREAK
968
1206
  case 10:
969
1207
  YY_RULE_SETUP
970
- #line 76 "tokenizer.l"
1208
+ #line 101 "tokenizer.l"
971
1209
  { BEGIN(INITIAL); }
972
1210
  YY_BREAK
973
1211
  case 11:
974
1212
  YY_RULE_SETUP
975
- #line 77 "tokenizer.l"
1213
+ #line 102 "tokenizer.l"
976
1214
  { BEGIN(INITIAL); }
977
1215
  YY_BREAK
978
1216
  case 12:
979
1217
  YY_RULE_SETUP
980
- #line 78 "tokenizer.l"
1218
+ #line 103 "tokenizer.l"
981
1219
  { BEGIN(INITIAL); }
982
1220
  YY_BREAK
983
1221
  case 13:
984
1222
  YY_RULE_SETUP
985
- #line 79 "tokenizer.l"
1223
+ #line 104 "tokenizer.l"
986
1224
  { BEGIN(INITIAL); }
987
1225
  YY_BREAK
988
1226
  case 14:
989
1227
  YY_RULE_SETUP
990
- #line 80 "tokenizer.l"
1228
+ #line 105 "tokenizer.l"
991
1229
  { BEGIN(INITIAL); }
992
1230
  YY_BREAK
993
1231
  case 15:
994
1232
  YY_RULE_SETUP
995
- #line 81 "tokenizer.l"
1233
+ #line 106 "tokenizer.l"
996
1234
  { BEGIN(INITIAL); }
997
1235
  YY_BREAK
998
1236
  case 16:
999
1237
  YY_RULE_SETUP
1000
- #line 83 "tokenizer.l"
1238
+ #line 108 "tokenizer.l"
1001
1239
  { /* nothing */ }
1002
1240
  YY_BREAK
1003
1241
  case 17:
1004
1242
  YY_RULE_SETUP
1005
- #line 84 "tokenizer.l"
1243
+ #line 109 "tokenizer.l"
1006
1244
  { eat_until_unescaped('"'); }
1007
1245
  YY_BREAK
1008
1246
  case 18:
1009
1247
  YY_RULE_SETUP
1010
- #line 85 "tokenizer.l"
1248
+ #line 110 "tokenizer.l"
1011
1249
  { eat_until_unescaped('\''); }
1012
1250
  YY_BREAK
1013
1251
  case 19:
1014
1252
  YY_RULE_SETUP
1015
- #line 86 "tokenizer.l"
1253
+ #line 111 "tokenizer.l"
1016
1254
  { /* nothing */ }
1017
1255
  YY_BREAK
1018
1256
  case 20:
1019
1257
  YY_RULE_SETUP
1020
- #line 87 "tokenizer.l"
1258
+ #line 112 "tokenizer.l"
1021
1259
  {
1022
1260
  if (strcmp(yytext, "<!--") == 0) {
1023
1261
  BEGIN(xml_comment);
1024
1262
  } else {
1025
- feed_token(strdup(yytext), SGML_TOKEN);
1263
+ FEED_SGML();
1026
1264
  BEGIN(sgml);
1027
1265
  return 1;
1028
1266
  }
@@ -1030,73 +1268,73 @@ YY_RULE_SETUP
1030
1268
  YY_BREAK
1031
1269
  case 21:
1032
1270
  YY_RULE_SETUP
1033
- #line 96 "tokenizer.l"
1034
- { feed_token(strndup(yytext, strlen(yytext) - 1), REGULAR_TOKEN); eat_until_unescaped('"'); return 1; }
1271
+ #line 121 "tokenizer.l"
1272
+ { FEED2(yytext, yyleng - 1); eat_until_unescaped('"'); return 1; }
1035
1273
  YY_BREAK
1036
1274
  case 22:
1037
1275
  YY_RULE_SETUP
1038
- #line 97 "tokenizer.l"
1039
- { feed_token(strndup(yytext, strlen(yytext) - 1), REGULAR_TOKEN); eat_until_unescaped('\''); return 1; }
1276
+ #line 122 "tokenizer.l"
1277
+ { FEED2(yytext, yyleng - 1); eat_until_unescaped('\''); return 1; }
1040
1278
  YY_BREAK
1041
1279
  case 23:
1042
1280
  YY_RULE_SETUP
1043
- #line 98 "tokenizer.l"
1044
- { feed_token(strdup(yytext), REGULAR_TOKEN); *(strchr(yyextra->token, '=') + 1) = 0; return 1; }
1281
+ #line 123 "tokenizer.l"
1282
+ { FEED2(yytext, strchr(yytext, '=') - yytext + 1); return 1; }
1045
1283
  YY_BREAK
1046
1284
  case 24:
1047
1285
  YY_RULE_SETUP
1048
- #line 99 "tokenizer.l"
1049
- { feed_token(strdup(yytext), REGULAR_TOKEN); return 1; }
1286
+ #line 124 "tokenizer.l"
1287
+ { FEED(); return 1; }
1050
1288
  YY_BREAK
1051
1289
  case 25:
1052
1290
  YY_RULE_SETUP
1053
- #line 100 "tokenizer.l"
1291
+ #line 125 "tokenizer.l"
1054
1292
  { BEGIN(INITIAL); }
1055
1293
  YY_BREAK
1056
1294
  case 26:
1057
1295
  /* rule 26 can match eol */
1058
1296
  YY_RULE_SETUP
1059
- #line 101 "tokenizer.l"
1297
+ #line 126 "tokenizer.l"
1060
1298
  { /* nothing */ }
1061
1299
  YY_BREAK
1062
1300
  case 27:
1063
1301
  YY_RULE_SETUP
1064
- #line 102 "tokenizer.l"
1065
- { feed_token(strdup(yytext), REGULAR_TOKEN); return 1; }
1302
+ #line 127 "tokenizer.l"
1303
+ { FEED(); return 1; }
1066
1304
  YY_BREAK
1067
1305
  case 28:
1068
1306
  YY_RULE_SETUP
1069
- #line 103 "tokenizer.l"
1307
+ #line 128 "tokenizer.l"
1070
1308
  {
1071
1309
  if (strncmp(yytext, "/*", 2) == 0) {
1072
- if (strlen(yytext) >= 4 && strcmp(yytext + strlen(yytext) - 2, "*/") == 0) {
1310
+ if (yyleng >= 4 && strcmp(yytext + yyleng - 2, "*/") == 0) {
1073
1311
  /* nothing */
1074
1312
  } else {
1075
1313
  BEGIN(c_comment);
1076
1314
  }
1077
1315
  } else {
1078
- feed_token(strdup(yytext), REGULAR_TOKEN);
1316
+ FEED();
1079
1317
  return 1;
1080
1318
  }
1081
1319
  }
1082
1320
  YY_BREAK
1083
1321
  case 29:
1084
1322
  YY_RULE_SETUP
1085
- #line 115 "tokenizer.l"
1086
- { feed_token(strdup(yytext), REGULAR_TOKEN); return 1; }
1323
+ #line 140 "tokenizer.l"
1324
+ { FEED(); return 1; }
1087
1325
  YY_BREAK
1088
1326
  case 30:
1089
1327
  /* rule 30 can match eol */
1090
1328
  YY_RULE_SETUP
1091
- #line 116 "tokenizer.l"
1329
+ #line 141 "tokenizer.l"
1092
1330
  { /* nothing */ }
1093
1331
  YY_BREAK
1094
1332
  case 31:
1095
1333
  YY_RULE_SETUP
1096
- #line 118 "tokenizer.l"
1334
+ #line 143 "tokenizer.l"
1097
1335
  YY_FATAL_ERROR( "flex scanner jammed" );
1098
1336
  YY_BREAK
1099
- #line 1100 "lex.linguist_yy.c"
1337
+ #line 1338 "lex.linguist_yy.c"
1100
1338
  case YY_STATE_EOF(INITIAL):
1101
1339
  case YY_STATE_EOF(sgml):
1102
1340
  case YY_STATE_EOF(c_comment):
@@ -1121,7 +1359,7 @@ case YY_STATE_EOF(python_scomment):
1121
1359
  /* We're scanning a new file or input source. It's
1122
1360
  * possible that this happened because the user
1123
1361
  * just pointed yyin at a new source and called
1124
- * linguist_yylex(). If so, then we have to assure
1362
+ * yylex(). If so, then we have to assure
1125
1363
  * consistency between YY_CURRENT_BUFFER and our
1126
1364
  * globals. Here is the right place to do so, because
1127
1365
  * this is the first action (other than possibly a
@@ -1182,7 +1420,7 @@ case YY_STATE_EOF(python_scomment):
1182
1420
  {
1183
1421
  yyg->yy_did_buffer_switch_on_eof = 0;
1184
1422
 
1185
- if ( linguist_yywrap(yyscanner ) )
1423
+ if ( yywrap( yyscanner ) )
1186
1424
  {
1187
1425
  /* Note: because we've taken care in
1188
1426
  * yy_get_next_buffer() to have set up
@@ -1235,7 +1473,8 @@ case YY_STATE_EOF(python_scomment):
1235
1473
  "fatal flex scanner internal error--no action found" );
1236
1474
  } /* end of action switch */
1237
1475
  } /* end of scanning one token */
1238
- } /* end of linguist_yylex */
1476
+ } /* end of user's declarations */
1477
+ } /* end of yylex */
1239
1478
 
1240
1479
  /* yy_get_next_buffer - try to read in a new buffer
1241
1480
  *
@@ -1247,9 +1486,9 @@ case YY_STATE_EOF(python_scomment):
1247
1486
  static int yy_get_next_buffer (yyscan_t yyscanner)
1248
1487
  {
1249
1488
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1250
- register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
1251
- register char *source = yyg->yytext_ptr;
1252
- register int number_to_move, i;
1489
+ char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
1490
+ char *source = yyg->yytext_ptr;
1491
+ int number_to_move, i;
1253
1492
  int ret_val;
1254
1493
 
1255
1494
  if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] )
@@ -1278,7 +1517,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1278
1517
  /* Try to read more data. */
1279
1518
 
1280
1519
  /* First move last chars to start of buffer. */
1281
- number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1;
1520
+ number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr - 1);
1282
1521
 
1283
1522
  for ( i = 0; i < number_to_move; ++i )
1284
1523
  *(dest++) = *(source++);
@@ -1291,21 +1530,21 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1291
1530
 
1292
1531
  else
1293
1532
  {
1294
- yy_size_t num_to_read =
1533
+ int num_to_read =
1295
1534
  YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
1296
1535
 
1297
1536
  while ( num_to_read <= 0 )
1298
1537
  { /* Not enough room in the buffer - grow it. */
1299
1538
 
1300
1539
  /* just a shorter name for the current buffer */
1301
- YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
1540
+ YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
1302
1541
 
1303
1542
  int yy_c_buf_p_offset =
1304
1543
  (int) (yyg->yy_c_buf_p - b->yy_ch_buf);
1305
1544
 
1306
1545
  if ( b->yy_is_our_buffer )
1307
1546
  {
1308
- yy_size_t new_size = b->yy_buf_size * 2;
1547
+ int new_size = b->yy_buf_size * 2;
1309
1548
 
1310
1549
  if ( new_size <= 0 )
1311
1550
  b->yy_buf_size += b->yy_buf_size / 8;
@@ -1314,11 +1553,12 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1314
1553
 
1315
1554
  b->yy_ch_buf = (char *)
1316
1555
  /* Include room in for 2 EOB chars. */
1317
- linguist_yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ,yyscanner );
1556
+ yyrealloc( (void *) b->yy_ch_buf,
1557
+ (yy_size_t) (b->yy_buf_size + 2) , yyscanner );
1318
1558
  }
1319
1559
  else
1320
1560
  /* Can't grow it, we don't own it. */
1321
- b->yy_ch_buf = 0;
1561
+ b->yy_ch_buf = NULL;
1322
1562
 
1323
1563
  if ( ! b->yy_ch_buf )
1324
1564
  YY_FATAL_ERROR(
@@ -1346,7 +1586,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1346
1586
  if ( number_to_move == YY_MORE_ADJ )
1347
1587
  {
1348
1588
  ret_val = EOB_ACT_END_OF_FILE;
1349
- linguist_yyrestart(yyin ,yyscanner);
1589
+ yyrestart( yyin , yyscanner);
1350
1590
  }
1351
1591
 
1352
1592
  else
@@ -1360,12 +1600,15 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1360
1600
  else
1361
1601
  ret_val = EOB_ACT_CONTINUE_SCAN;
1362
1602
 
1363
- if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
1603
+ if ((yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
1364
1604
  /* Extend the array by 50%, plus the number we really need. */
1365
- yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
1366
- YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) linguist_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
1605
+ int new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
1606
+ YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
1607
+ (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size , yyscanner );
1367
1608
  if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
1368
1609
  YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
1610
+ /* "- 2" to take care of EOB's */
1611
+ YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
1369
1612
  }
1370
1613
 
1371
1614
  yyg->yy_n_chars += number_to_move;
@@ -1381,8 +1624,8 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1381
1624
 
1382
1625
  static yy_state_type yy_get_previous_state (yyscan_t yyscanner)
1383
1626
  {
1384
- register yy_state_type yy_current_state;
1385
- register char *yy_cp;
1627
+ yy_state_type yy_current_state;
1628
+ char *yy_cp;
1386
1629
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1387
1630
 
1388
1631
  yy_current_state = yyg->yy_start;
@@ -1390,7 +1633,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1390
1633
 
1391
1634
  for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
1392
1635
  {
1393
- register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
1636
+ YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
1394
1637
  if ( yy_accept[yy_current_state] )
1395
1638
  {
1396
1639
  yyg->yy_last_accepting_state = yy_current_state;
@@ -1400,9 +1643,9 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1400
1643
  {
1401
1644
  yy_current_state = (int) yy_def[yy_current_state];
1402
1645
  if ( yy_current_state >= 114 )
1403
- yy_c = yy_meta[(unsigned int) yy_c];
1646
+ yy_c = yy_meta[yy_c];
1404
1647
  }
1405
- yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1648
+ yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1406
1649
  }
1407
1650
 
1408
1651
  return yy_current_state;
@@ -1415,11 +1658,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1415
1658
  */
1416
1659
  static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state , yyscan_t yyscanner)
1417
1660
  {
1418
- register int yy_is_jam;
1661
+ int yy_is_jam;
1419
1662
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
1420
- register char *yy_cp = yyg->yy_c_buf_p;
1663
+ char *yy_cp = yyg->yy_c_buf_p;
1421
1664
 
1422
- register YY_CHAR yy_c = 1;
1665
+ YY_CHAR yy_c = 1;
1423
1666
  if ( yy_accept[yy_current_state] )
1424
1667
  {
1425
1668
  yyg->yy_last_accepting_state = yy_current_state;
@@ -1429,14 +1672,19 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1429
1672
  {
1430
1673
  yy_current_state = (int) yy_def[yy_current_state];
1431
1674
  if ( yy_current_state >= 114 )
1432
- yy_c = yy_meta[(unsigned int) yy_c];
1675
+ yy_c = yy_meta[yy_c];
1433
1676
  }
1434
- yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1677
+ yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1435
1678
  yy_is_jam = (yy_current_state == 113);
1436
1679
 
1680
+ (void)yyg;
1437
1681
  return yy_is_jam ? 0 : yy_current_state;
1438
1682
  }
1439
1683
 
1684
+ #ifndef YY_NO_UNPUT
1685
+
1686
+ #endif
1687
+
1440
1688
  #ifndef YY_NO_INPUT
1441
1689
  #ifdef __cplusplus
1442
1690
  static int yyinput (yyscan_t yyscanner)
@@ -1462,7 +1710,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1462
1710
 
1463
1711
  else
1464
1712
  { /* need more input */
1465
- yy_size_t offset = yyg->yy_c_buf_p - yyg->yytext_ptr;
1713
+ int offset = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr);
1466
1714
  ++yyg->yy_c_buf_p;
1467
1715
 
1468
1716
  switch ( yy_get_next_buffer( yyscanner ) )
@@ -1479,13 +1727,13 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1479
1727
  */
1480
1728
 
1481
1729
  /* Reset buffer status. */
1482
- linguist_yyrestart(yyin ,yyscanner);
1730
+ yyrestart( yyin , yyscanner);
1483
1731
 
1484
1732
  /*FALLTHROUGH*/
1485
1733
 
1486
1734
  case EOB_ACT_END_OF_FILE:
1487
1735
  {
1488
- if ( linguist_yywrap(yyscanner ) )
1736
+ if ( yywrap( yyscanner ) )
1489
1737
  return 0;
1490
1738
 
1491
1739
  if ( ! yyg->yy_did_buffer_switch_on_eof )
@@ -1519,34 +1767,34 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1519
1767
  * @param yyscanner The scanner object.
1520
1768
  * @note This function does not reset the start condition to @c INITIAL .
1521
1769
  */
1522
- void linguist_yyrestart (FILE * input_file , yyscan_t yyscanner)
1770
+ void yyrestart (FILE * input_file , yyscan_t yyscanner)
1523
1771
  {
1524
1772
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1525
1773
 
1526
1774
  if ( ! YY_CURRENT_BUFFER ){
1527
- linguist_yyensure_buffer_stack (yyscanner);
1775
+ yyensure_buffer_stack (yyscanner);
1528
1776
  YY_CURRENT_BUFFER_LVALUE =
1529
- linguist_yy_create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
1777
+ yy_create_buffer( yyin, YY_BUF_SIZE , yyscanner);
1530
1778
  }
1531
1779
 
1532
- linguist_yy_init_buffer(YY_CURRENT_BUFFER,input_file ,yyscanner);
1533
- linguist_yy_load_buffer_state(yyscanner );
1780
+ yy_init_buffer( YY_CURRENT_BUFFER, input_file , yyscanner);
1781
+ yy_load_buffer_state( yyscanner );
1534
1782
  }
1535
1783
 
1536
1784
  /** Switch to a different input buffer.
1537
1785
  * @param new_buffer The new input buffer.
1538
1786
  * @param yyscanner The scanner object.
1539
1787
  */
1540
- void linguist_yy_switch_to_buffer (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
1788
+ void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
1541
1789
  {
1542
1790
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1543
1791
 
1544
1792
  /* TODO. We should be able to replace this entire function body
1545
1793
  * with
1546
- * linguist_yypop_buffer_state();
1547
- * linguist_yypush_buffer_state(new_buffer);
1794
+ * yypop_buffer_state();
1795
+ * yypush_buffer_state(new_buffer);
1548
1796
  */
1549
- linguist_yyensure_buffer_stack (yyscanner);
1797
+ yyensure_buffer_stack (yyscanner);
1550
1798
  if ( YY_CURRENT_BUFFER == new_buffer )
1551
1799
  return;
1552
1800
 
@@ -1559,17 +1807,17 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
1559
1807
  }
1560
1808
 
1561
1809
  YY_CURRENT_BUFFER_LVALUE = new_buffer;
1562
- linguist_yy_load_buffer_state(yyscanner );
1810
+ yy_load_buffer_state( yyscanner );
1563
1811
 
1564
1812
  /* We don't actually know whether we did this switch during
1565
- * EOF (linguist_yywrap()) processing, but the only time this flag
1566
- * is looked at is after linguist_yywrap() is called, so it's safe
1813
+ * EOF (yywrap()) processing, but the only time this flag
1814
+ * is looked at is after yywrap() is called, so it's safe
1567
1815
  * to go ahead and always set it.
1568
1816
  */
1569
1817
  yyg->yy_did_buffer_switch_on_eof = 1;
1570
1818
  }
1571
1819
 
1572
- static void linguist_yy_load_buffer_state (yyscan_t yyscanner)
1820
+ static void yy_load_buffer_state (yyscan_t yyscanner)
1573
1821
  {
1574
1822
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1575
1823
  yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
@@ -1584,35 +1832,35 @@ static void linguist_yy_load_buffer_state (yyscan_t yyscanner)
1584
1832
  * @param yyscanner The scanner object.
1585
1833
  * @return the allocated buffer state.
1586
1834
  */
1587
- YY_BUFFER_STATE linguist_yy_create_buffer (FILE * file, int size , yyscan_t yyscanner)
1835
+ YY_BUFFER_STATE yy_create_buffer (FILE * file, int size , yyscan_t yyscanner)
1588
1836
  {
1589
1837
  YY_BUFFER_STATE b;
1590
1838
 
1591
- b = (YY_BUFFER_STATE) linguist_yyalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
1839
+ b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) , yyscanner );
1592
1840
  if ( ! b )
1593
- YY_FATAL_ERROR( "out of dynamic memory in linguist_yy_create_buffer()" );
1841
+ YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
1594
1842
 
1595
1843
  b->yy_buf_size = size;
1596
1844
 
1597
1845
  /* yy_ch_buf has to be 2 characters longer than the size given because
1598
1846
  * we need to put in 2 end-of-buffer characters.
1599
1847
  */
1600
- b->yy_ch_buf = (char *) linguist_yyalloc(b->yy_buf_size + 2 ,yyscanner );
1848
+ b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) , yyscanner );
1601
1849
  if ( ! b->yy_ch_buf )
1602
- YY_FATAL_ERROR( "out of dynamic memory in linguist_yy_create_buffer()" );
1850
+ YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
1603
1851
 
1604
1852
  b->yy_is_our_buffer = 1;
1605
1853
 
1606
- linguist_yy_init_buffer(b,file ,yyscanner);
1854
+ yy_init_buffer( b, file , yyscanner);
1607
1855
 
1608
1856
  return b;
1609
1857
  }
1610
1858
 
1611
1859
  /** Destroy the buffer.
1612
- * @param b a buffer created with linguist_yy_create_buffer()
1860
+ * @param b a buffer created with yy_create_buffer()
1613
1861
  * @param yyscanner The scanner object.
1614
1862
  */
1615
- void linguist_yy_delete_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
1863
+ void yy_delete_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
1616
1864
  {
1617
1865
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1618
1866
 
@@ -1623,28 +1871,28 @@ static void linguist_yy_load_buffer_state (yyscan_t yyscanner)
1623
1871
  YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
1624
1872
 
1625
1873
  if ( b->yy_is_our_buffer )
1626
- linguist_yyfree((void *) b->yy_ch_buf ,yyscanner );
1874
+ yyfree( (void *) b->yy_ch_buf , yyscanner );
1627
1875
 
1628
- linguist_yyfree((void *) b ,yyscanner );
1876
+ yyfree( (void *) b , yyscanner );
1629
1877
  }
1630
1878
 
1631
1879
  /* Initializes or reinitializes a buffer.
1632
1880
  * This function is sometimes called more than once on the same buffer,
1633
- * such as during a linguist_yyrestart() or at EOF.
1881
+ * such as during a yyrestart() or at EOF.
1634
1882
  */
1635
- static void linguist_yy_init_buffer (YY_BUFFER_STATE b, FILE * file , yyscan_t yyscanner)
1883
+ static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file , yyscan_t yyscanner)
1636
1884
 
1637
1885
  {
1638
1886
  int oerrno = errno;
1639
1887
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1640
1888
 
1641
- linguist_yy_flush_buffer(b ,yyscanner);
1889
+ yy_flush_buffer( b , yyscanner);
1642
1890
 
1643
1891
  b->yy_input_file = file;
1644
1892
  b->yy_fill_buffer = 1;
1645
1893
 
1646
- /* If b is the current buffer, then linguist_yy_init_buffer was _probably_
1647
- * called from linguist_yyrestart() or through yy_get_next_buffer.
1894
+ /* If b is the current buffer, then yy_init_buffer was _probably_
1895
+ * called from yyrestart() or through yy_get_next_buffer.
1648
1896
  * In that case, we don't want to reset the lineno or column.
1649
1897
  */
1650
1898
  if (b != YY_CURRENT_BUFFER){
@@ -1661,7 +1909,7 @@ static void linguist_yy_load_buffer_state (yyscan_t yyscanner)
1661
1909
  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
1662
1910
  * @param yyscanner The scanner object.
1663
1911
  */
1664
- void linguist_yy_flush_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
1912
+ void yy_flush_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
1665
1913
  {
1666
1914
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1667
1915
  if ( ! b )
@@ -1682,7 +1930,7 @@ static void linguist_yy_load_buffer_state (yyscan_t yyscanner)
1682
1930
  b->yy_buffer_status = YY_BUFFER_NEW;
1683
1931
 
1684
1932
  if ( b == YY_CURRENT_BUFFER )
1685
- linguist_yy_load_buffer_state(yyscanner );
1933
+ yy_load_buffer_state( yyscanner );
1686
1934
  }
1687
1935
 
1688
1936
  /** Pushes the new state onto the stack. The new state becomes
@@ -1691,15 +1939,15 @@ static void linguist_yy_load_buffer_state (yyscan_t yyscanner)
1691
1939
  * @param new_buffer The new state.
1692
1940
  * @param yyscanner The scanner object.
1693
1941
  */
1694
- void linguist_yypush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
1942
+ void yypush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
1695
1943
  {
1696
1944
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1697
1945
  if (new_buffer == NULL)
1698
1946
  return;
1699
1947
 
1700
- linguist_yyensure_buffer_stack(yyscanner);
1948
+ yyensure_buffer_stack(yyscanner);
1701
1949
 
1702
- /* This block is copied from linguist_yy_switch_to_buffer. */
1950
+ /* This block is copied from yy_switch_to_buffer. */
1703
1951
  if ( YY_CURRENT_BUFFER )
1704
1952
  {
1705
1953
  /* Flush out information for old buffer. */
@@ -1713,8 +1961,8 @@ void linguist_yypush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscann
1713
1961
  yyg->yy_buffer_stack_top++;
1714
1962
  YY_CURRENT_BUFFER_LVALUE = new_buffer;
1715
1963
 
1716
- /* copied from linguist_yy_switch_to_buffer. */
1717
- linguist_yy_load_buffer_state(yyscanner );
1964
+ /* copied from yy_switch_to_buffer. */
1965
+ yy_load_buffer_state( yyscanner );
1718
1966
  yyg->yy_did_buffer_switch_on_eof = 1;
1719
1967
  }
1720
1968
 
@@ -1722,19 +1970,19 @@ void linguist_yypush_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscann
1722
1970
  * The next element becomes the new top.
1723
1971
  * @param yyscanner The scanner object.
1724
1972
  */
1725
- void linguist_yypop_buffer_state (yyscan_t yyscanner)
1973
+ void yypop_buffer_state (yyscan_t yyscanner)
1726
1974
  {
1727
1975
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1728
1976
  if (!YY_CURRENT_BUFFER)
1729
1977
  return;
1730
1978
 
1731
- linguist_yy_delete_buffer(YY_CURRENT_BUFFER ,yyscanner);
1979
+ yy_delete_buffer(YY_CURRENT_BUFFER , yyscanner);
1732
1980
  YY_CURRENT_BUFFER_LVALUE = NULL;
1733
1981
  if (yyg->yy_buffer_stack_top > 0)
1734
1982
  --yyg->yy_buffer_stack_top;
1735
1983
 
1736
1984
  if (YY_CURRENT_BUFFER) {
1737
- linguist_yy_load_buffer_state(yyscanner );
1985
+ yy_load_buffer_state( yyscanner );
1738
1986
  yyg->yy_did_buffer_switch_on_eof = 1;
1739
1987
  }
1740
1988
  }
@@ -1742,7 +1990,7 @@ void linguist_yypop_buffer_state (yyscan_t yyscanner)
1742
1990
  /* Allocates the stack if it does not exist.
1743
1991
  * Guarantees space for at least one push.
1744
1992
  */
1745
- static void linguist_yyensure_buffer_stack (yyscan_t yyscanner)
1993
+ static void yyensure_buffer_stack (yyscan_t yyscanner)
1746
1994
  {
1747
1995
  yy_size_t num_to_alloc;
1748
1996
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
@@ -1753,15 +2001,15 @@ static void linguist_yyensure_buffer_stack (yyscan_t yyscanner)
1753
2001
  * scanner will even need a stack. We use 2 instead of 1 to avoid an
1754
2002
  * immediate realloc on the next call.
1755
2003
  */
1756
- num_to_alloc = 1;
1757
- yyg->yy_buffer_stack = (struct yy_buffer_state**)linguist_yyalloc
2004
+ num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
2005
+ yyg->yy_buffer_stack = (struct yy_buffer_state**)yyalloc
1758
2006
  (num_to_alloc * sizeof(struct yy_buffer_state*)
1759
2007
  , yyscanner);
1760
2008
  if ( ! yyg->yy_buffer_stack )
1761
- YY_FATAL_ERROR( "out of dynamic memory in linguist_yyensure_buffer_stack()" );
1762
-
2009
+ YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
2010
+
1763
2011
  memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
1764
-
2012
+
1765
2013
  yyg->yy_buffer_stack_max = num_to_alloc;
1766
2014
  yyg->yy_buffer_stack_top = 0;
1767
2015
  return;
@@ -1770,15 +2018,15 @@ static void linguist_yyensure_buffer_stack (yyscan_t yyscanner)
1770
2018
  if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){
1771
2019
 
1772
2020
  /* Increase the buffer to prepare for a possible push. */
1773
- int grow_size = 8 /* arbitrary grow size */;
2021
+ yy_size_t grow_size = 8 /* arbitrary grow size */;
1774
2022
 
1775
2023
  num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
1776
- yyg->yy_buffer_stack = (struct yy_buffer_state**)linguist_yyrealloc
2024
+ yyg->yy_buffer_stack = (struct yy_buffer_state**)yyrealloc
1777
2025
  (yyg->yy_buffer_stack,
1778
2026
  num_to_alloc * sizeof(struct yy_buffer_state*)
1779
2027
  , yyscanner);
1780
2028
  if ( ! yyg->yy_buffer_stack )
1781
- YY_FATAL_ERROR( "out of dynamic memory in linguist_yyensure_buffer_stack()" );
2029
+ YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
1782
2030
 
1783
2031
  /* zero only the new slots.*/
1784
2032
  memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_size * sizeof(struct yy_buffer_state*));
@@ -1790,9 +2038,9 @@ static void linguist_yyensure_buffer_stack (yyscan_t yyscanner)
1790
2038
  * @param base the character buffer
1791
2039
  * @param size the size in bytes of the character buffer
1792
2040
  * @param yyscanner The scanner object.
1793
- * @return the newly allocated buffer state object.
2041
+ * @return the newly allocated buffer state object.
1794
2042
  */
1795
- YY_BUFFER_STATE linguist_yy_scan_buffer (char * base, yy_size_t size , yyscan_t yyscanner)
2043
+ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size , yyscan_t yyscanner)
1796
2044
  {
1797
2045
  YY_BUFFER_STATE b;
1798
2046
 
@@ -1800,68 +2048,69 @@ YY_BUFFER_STATE linguist_yy_scan_buffer (char * base, yy_size_t size , yyscan_
1800
2048
  base[size-2] != YY_END_OF_BUFFER_CHAR ||
1801
2049
  base[size-1] != YY_END_OF_BUFFER_CHAR )
1802
2050
  /* They forgot to leave room for the EOB's. */
1803
- return 0;
2051
+ return NULL;
1804
2052
 
1805
- b = (YY_BUFFER_STATE) linguist_yyalloc(sizeof( struct yy_buffer_state ) ,yyscanner );
2053
+ b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) , yyscanner );
1806
2054
  if ( ! b )
1807
- YY_FATAL_ERROR( "out of dynamic memory in linguist_yy_scan_buffer()" );
2055
+ YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
1808
2056
 
1809
- b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2057
+ b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */
1810
2058
  b->yy_buf_pos = b->yy_ch_buf = base;
1811
2059
  b->yy_is_our_buffer = 0;
1812
- b->yy_input_file = 0;
2060
+ b->yy_input_file = NULL;
1813
2061
  b->yy_n_chars = b->yy_buf_size;
1814
2062
  b->yy_is_interactive = 0;
1815
2063
  b->yy_at_bol = 1;
1816
2064
  b->yy_fill_buffer = 0;
1817
2065
  b->yy_buffer_status = YY_BUFFER_NEW;
1818
2066
 
1819
- linguist_yy_switch_to_buffer(b ,yyscanner );
2067
+ yy_switch_to_buffer( b , yyscanner );
1820
2068
 
1821
2069
  return b;
1822
2070
  }
1823
2071
 
1824
- /** Setup the input buffer state to scan a string. The next call to linguist_yylex() will
2072
+ /** Setup the input buffer state to scan a string. The next call to yylex() will
1825
2073
  * scan from a @e copy of @a str.
1826
2074
  * @param yystr a NUL-terminated string to scan
1827
2075
  * @param yyscanner The scanner object.
1828
2076
  * @return the newly allocated buffer state object.
1829
2077
  * @note If you want to scan bytes that may contain NUL values, then use
1830
- * linguist_yy_scan_bytes() instead.
2078
+ * yy_scan_bytes() instead.
1831
2079
  */
1832
- YY_BUFFER_STATE linguist_yy_scan_string (yyconst char * yystr , yyscan_t yyscanner)
2080
+ YY_BUFFER_STATE yy_scan_string (const char * yystr , yyscan_t yyscanner)
1833
2081
  {
1834
2082
 
1835
- return linguist_yy_scan_bytes(yystr,strlen(yystr) ,yyscanner);
2083
+ return yy_scan_bytes( yystr, (int) strlen(yystr) , yyscanner);
1836
2084
  }
1837
2085
 
1838
- /** Setup the input buffer state to scan the given bytes. The next call to linguist_yylex() will
2086
+ /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
1839
2087
  * scan from a @e copy of @a bytes.
1840
- * @param bytes the byte buffer to scan
1841
- * @param len the number of bytes in the buffer pointed to by @a bytes.
2088
+ * @param yybytes the byte buffer to scan
2089
+ * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
1842
2090
  * @param yyscanner The scanner object.
1843
2091
  * @return the newly allocated buffer state object.
1844
2092
  */
1845
- YY_BUFFER_STATE linguist_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len , yyscan_t yyscanner)
2093
+ YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len , yyscan_t yyscanner)
1846
2094
  {
1847
2095
  YY_BUFFER_STATE b;
1848
2096
  char *buf;
1849
- yy_size_t n, i;
2097
+ yy_size_t n;
2098
+ int i;
1850
2099
 
1851
2100
  /* Get memory for full buffer, including space for trailing EOB's. */
1852
- n = _yybytes_len + 2;
1853
- buf = (char *) linguist_yyalloc(n ,yyscanner );
2101
+ n = (yy_size_t) (_yybytes_len + 2);
2102
+ buf = (char *) yyalloc( n , yyscanner );
1854
2103
  if ( ! buf )
1855
- YY_FATAL_ERROR( "out of dynamic memory in linguist_yy_scan_bytes()" );
2104
+ YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
1856
2105
 
1857
2106
  for ( i = 0; i < _yybytes_len; ++i )
1858
2107
  buf[i] = yybytes[i];
1859
2108
 
1860
2109
  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
1861
2110
 
1862
- b = linguist_yy_scan_buffer(buf,n ,yyscanner);
2111
+ b = yy_scan_buffer( buf, n , yyscanner);
1863
2112
  if ( ! b )
1864
- YY_FATAL_ERROR( "bad buffer in linguist_yy_scan_bytes()" );
2113
+ YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
1865
2114
 
1866
2115
  /* It's okay to grow etc. this buffer, and we should throw it
1867
2116
  * away when we're done.
@@ -1875,9 +2124,11 @@ YY_BUFFER_STATE linguist_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yyb
1875
2124
  #define YY_EXIT_FAILURE 2
1876
2125
  #endif
1877
2126
 
1878
- static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
2127
+ static void yynoreturn yy_fatal_error (const char* msg , yyscan_t yyscanner)
1879
2128
  {
1880
- (void) fprintf( stderr, "%s\n", msg );
2129
+ struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2130
+ (void)yyg;
2131
+ fprintf( stderr, "%s\n", msg );
1881
2132
  exit( YY_EXIT_FAILURE );
1882
2133
  }
1883
2134
 
@@ -1903,7 +2154,7 @@ static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
1903
2154
  /** Get the user-defined data for this scanner.
1904
2155
  * @param yyscanner The scanner object.
1905
2156
  */
1906
- YY_EXTRA_TYPE linguist_yyget_extra (yyscan_t yyscanner)
2157
+ YY_EXTRA_TYPE yyget_extra (yyscan_t yyscanner)
1907
2158
  {
1908
2159
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1909
2160
  return yyextra;
@@ -1912,10 +2163,10 @@ YY_EXTRA_TYPE linguist_yyget_extra (yyscan_t yyscanner)
1912
2163
  /** Get the current line number.
1913
2164
  * @param yyscanner The scanner object.
1914
2165
  */
1915
- int linguist_yyget_lineno (yyscan_t yyscanner)
2166
+ int yyget_lineno (yyscan_t yyscanner)
1916
2167
  {
1917
2168
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1918
-
2169
+
1919
2170
  if (! YY_CURRENT_BUFFER)
1920
2171
  return 0;
1921
2172
 
@@ -1925,10 +2176,10 @@ int linguist_yyget_lineno (yyscan_t yyscanner)
1925
2176
  /** Get the current column number.
1926
2177
  * @param yyscanner The scanner object.
1927
2178
  */
1928
- int linguist_yyget_column (yyscan_t yyscanner)
2179
+ int yyget_column (yyscan_t yyscanner)
1929
2180
  {
1930
2181
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1931
-
2182
+
1932
2183
  if (! YY_CURRENT_BUFFER)
1933
2184
  return 0;
1934
2185
 
@@ -1938,7 +2189,7 @@ int linguist_yyget_column (yyscan_t yyscanner)
1938
2189
  /** Get the input stream.
1939
2190
  * @param yyscanner The scanner object.
1940
2191
  */
1941
- FILE *linguist_yyget_in (yyscan_t yyscanner)
2192
+ FILE *yyget_in (yyscan_t yyscanner)
1942
2193
  {
1943
2194
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1944
2195
  return yyin;
@@ -1947,7 +2198,7 @@ FILE *linguist_yyget_in (yyscan_t yyscanner)
1947
2198
  /** Get the output stream.
1948
2199
  * @param yyscanner The scanner object.
1949
2200
  */
1950
- FILE *linguist_yyget_out (yyscan_t yyscanner)
2201
+ FILE *yyget_out (yyscan_t yyscanner)
1951
2202
  {
1952
2203
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1953
2204
  return yyout;
@@ -1956,7 +2207,7 @@ FILE *linguist_yyget_out (yyscan_t yyscanner)
1956
2207
  /** Get the length of the current token.
1957
2208
  * @param yyscanner The scanner object.
1958
2209
  */
1959
- yy_size_t linguist_yyget_leng (yyscan_t yyscanner)
2210
+ int yyget_leng (yyscan_t yyscanner)
1960
2211
  {
1961
2212
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1962
2213
  return yyleng;
@@ -1966,7 +2217,7 @@ yy_size_t linguist_yyget_leng (yyscan_t yyscanner)
1966
2217
  * @param yyscanner The scanner object.
1967
2218
  */
1968
2219
 
1969
- char *linguist_yyget_text (yyscan_t yyscanner)
2220
+ char *yyget_text (yyscan_t yyscanner)
1970
2221
  {
1971
2222
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1972
2223
  return yytext;
@@ -1976,90 +2227,88 @@ char *linguist_yyget_text (yyscan_t yyscanner)
1976
2227
  * @param user_defined The data to be associated with this scanner.
1977
2228
  * @param yyscanner The scanner object.
1978
2229
  */
1979
- void linguist_yyset_extra (YY_EXTRA_TYPE user_defined , yyscan_t yyscanner)
2230
+ void yyset_extra (YY_EXTRA_TYPE user_defined , yyscan_t yyscanner)
1980
2231
  {
1981
2232
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1982
2233
  yyextra = user_defined ;
1983
2234
  }
1984
2235
 
1985
2236
  /** Set the current line number.
1986
- * @param line_number
2237
+ * @param _line_number line number
1987
2238
  * @param yyscanner The scanner object.
1988
2239
  */
1989
- void linguist_yyset_lineno (int line_number , yyscan_t yyscanner)
2240
+ void yyset_lineno (int _line_number , yyscan_t yyscanner)
1990
2241
  {
1991
2242
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
1992
2243
 
1993
2244
  /* lineno is only valid if an input buffer exists. */
1994
2245
  if (! YY_CURRENT_BUFFER )
1995
- yy_fatal_error( "linguist_yyset_lineno called with no buffer" , yyscanner);
2246
+ YY_FATAL_ERROR( "yyset_lineno called with no buffer" );
1996
2247
 
1997
- yylineno = line_number;
2248
+ yylineno = _line_number;
1998
2249
  }
1999
2250
 
2000
2251
  /** Set the current column.
2001
- * @param line_number
2252
+ * @param _column_no column number
2002
2253
  * @param yyscanner The scanner object.
2003
2254
  */
2004
- void linguist_yyset_column (int column_no , yyscan_t yyscanner)
2255
+ void yyset_column (int _column_no , yyscan_t yyscanner)
2005
2256
  {
2006
2257
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2007
2258
 
2008
2259
  /* column is only valid if an input buffer exists. */
2009
2260
  if (! YY_CURRENT_BUFFER )
2010
- yy_fatal_error( "linguist_yyset_column called with no buffer" , yyscanner);
2261
+ YY_FATAL_ERROR( "yyset_column called with no buffer" );
2011
2262
 
2012
- yycolumn = column_no;
2263
+ yycolumn = _column_no;
2013
2264
  }
2014
2265
 
2015
2266
  /** Set the input stream. This does not discard the current
2016
2267
  * input buffer.
2017
- * @param in_str A readable stream.
2268
+ * @param _in_str A readable stream.
2018
2269
  * @param yyscanner The scanner object.
2019
- * @see linguist_yy_switch_to_buffer
2270
+ * @see yy_switch_to_buffer
2020
2271
  */
2021
- void linguist_yyset_in (FILE * in_str , yyscan_t yyscanner)
2272
+ void yyset_in (FILE * _in_str , yyscan_t yyscanner)
2022
2273
  {
2023
2274
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2024
- yyin = in_str ;
2275
+ yyin = _in_str ;
2025
2276
  }
2026
2277
 
2027
- void linguist_yyset_out (FILE * out_str , yyscan_t yyscanner)
2278
+ void yyset_out (FILE * _out_str , yyscan_t yyscanner)
2028
2279
  {
2029
2280
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2030
- yyout = out_str ;
2281
+ yyout = _out_str ;
2031
2282
  }
2032
2283
 
2033
- int linguist_yyget_debug (yyscan_t yyscanner)
2284
+ int yyget_debug (yyscan_t yyscanner)
2034
2285
  {
2035
2286
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2036
2287
  return yy_flex_debug;
2037
2288
  }
2038
2289
 
2039
- void linguist_yyset_debug (int bdebug , yyscan_t yyscanner)
2290
+ void yyset_debug (int _bdebug , yyscan_t yyscanner)
2040
2291
  {
2041
2292
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2042
- yy_flex_debug = bdebug ;
2293
+ yy_flex_debug = _bdebug ;
2043
2294
  }
2044
2295
 
2045
2296
  /* Accessor methods for yylval and yylloc */
2046
2297
 
2047
2298
  /* User-visible API */
2048
2299
 
2049
- /* linguist_yylex_init is special because it creates the scanner itself, so it is
2300
+ /* yylex_init is special because it creates the scanner itself, so it is
2050
2301
  * the ONLY reentrant function that doesn't take the scanner as the last argument.
2051
2302
  * That's why we explicitly handle the declaration, instead of using our macros.
2052
2303
  */
2053
-
2054
- int linguist_yylex_init(yyscan_t* ptr_yy_globals)
2055
-
2304
+ int yylex_init(yyscan_t* ptr_yy_globals)
2056
2305
  {
2057
2306
  if (ptr_yy_globals == NULL){
2058
2307
  errno = EINVAL;
2059
2308
  return 1;
2060
2309
  }
2061
2310
 
2062
- *ptr_yy_globals = (yyscan_t) linguist_yyalloc ( sizeof( struct yyguts_t ), NULL );
2311
+ *ptr_yy_globals = (yyscan_t) yyalloc ( sizeof( struct yyguts_t ), NULL );
2063
2312
 
2064
2313
  if (*ptr_yy_globals == NULL){
2065
2314
  errno = ENOMEM;
@@ -2072,39 +2321,37 @@ int linguist_yylex_init(yyscan_t* ptr_yy_globals)
2072
2321
  return yy_init_globals ( *ptr_yy_globals );
2073
2322
  }
2074
2323
 
2075
- /* linguist_yylex_init_extra has the same functionality as linguist_yylex_init, but follows the
2324
+ /* yylex_init_extra has the same functionality as yylex_init, but follows the
2076
2325
  * convention of taking the scanner as the last argument. Note however, that
2077
2326
  * this is a *pointer* to a scanner, as it will be allocated by this call (and
2078
2327
  * is the reason, too, why this function also must handle its own declaration).
2079
- * The user defined value in the first argument will be available to linguist_yyalloc in
2328
+ * The user defined value in the first argument will be available to yyalloc in
2080
2329
  * the yyextra field.
2081
2330
  */
2082
-
2083
- int linguist_yylex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_globals )
2084
-
2331
+ int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )
2085
2332
  {
2086
2333
  struct yyguts_t dummy_yyguts;
2087
2334
 
2088
- linguist_yyset_extra (yy_user_defined, &dummy_yyguts);
2335
+ yyset_extra (yy_user_defined, &dummy_yyguts);
2089
2336
 
2090
2337
  if (ptr_yy_globals == NULL){
2091
2338
  errno = EINVAL;
2092
2339
  return 1;
2093
2340
  }
2094
-
2095
- *ptr_yy_globals = (yyscan_t) linguist_yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
2096
-
2341
+
2342
+ *ptr_yy_globals = (yyscan_t) yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
2343
+
2097
2344
  if (*ptr_yy_globals == NULL){
2098
2345
  errno = ENOMEM;
2099
2346
  return 1;
2100
2347
  }
2101
-
2348
+
2102
2349
  /* By setting to 0xAA, we expose bugs in
2103
2350
  yy_init_globals. Leave at 0x00 for releases. */
2104
2351
  memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
2105
-
2106
- linguist_yyset_extra (yy_user_defined, *ptr_yy_globals);
2107
-
2352
+
2353
+ yyset_extra (yy_user_defined, *ptr_yy_globals);
2354
+
2108
2355
  return yy_init_globals ( *ptr_yy_globals );
2109
2356
  }
2110
2357
 
@@ -2112,13 +2359,13 @@ static int yy_init_globals (yyscan_t yyscanner)
2112
2359
  {
2113
2360
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2114
2361
  /* Initialization is the same as for the non-reentrant scanner.
2115
- * This function is called from linguist_yylex_destroy(), so don't allocate here.
2362
+ * This function is called from yylex_destroy(), so don't allocate here.
2116
2363
  */
2117
2364
 
2118
- yyg->yy_buffer_stack = 0;
2365
+ yyg->yy_buffer_stack = NULL;
2119
2366
  yyg->yy_buffer_stack_top = 0;
2120
2367
  yyg->yy_buffer_stack_max = 0;
2121
- yyg->yy_c_buf_p = (char *) 0;
2368
+ yyg->yy_c_buf_p = NULL;
2122
2369
  yyg->yy_init = 0;
2123
2370
  yyg->yy_start = 0;
2124
2371
 
@@ -2131,42 +2378,42 @@ static int yy_init_globals (yyscan_t yyscanner)
2131
2378
  yyin = stdin;
2132
2379
  yyout = stdout;
2133
2380
  #else
2134
- yyin = (FILE *) 0;
2135
- yyout = (FILE *) 0;
2381
+ yyin = NULL;
2382
+ yyout = NULL;
2136
2383
  #endif
2137
2384
 
2138
2385
  /* For future reference: Set errno on error, since we are called by
2139
- * linguist_yylex_init()
2386
+ * yylex_init()
2140
2387
  */
2141
2388
  return 0;
2142
2389
  }
2143
2390
 
2144
- /* linguist_yylex_destroy is for both reentrant and non-reentrant scanners. */
2145
- int linguist_yylex_destroy (yyscan_t yyscanner)
2391
+ /* yylex_destroy is for both reentrant and non-reentrant scanners. */
2392
+ int yylex_destroy (yyscan_t yyscanner)
2146
2393
  {
2147
2394
  struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2148
2395
 
2149
2396
  /* Pop the buffer stack, destroying each element. */
2150
2397
  while(YY_CURRENT_BUFFER){
2151
- linguist_yy_delete_buffer(YY_CURRENT_BUFFER ,yyscanner );
2398
+ yy_delete_buffer( YY_CURRENT_BUFFER , yyscanner );
2152
2399
  YY_CURRENT_BUFFER_LVALUE = NULL;
2153
- linguist_yypop_buffer_state(yyscanner);
2400
+ yypop_buffer_state(yyscanner);
2154
2401
  }
2155
2402
 
2156
2403
  /* Destroy the stack itself. */
2157
- linguist_yyfree(yyg->yy_buffer_stack ,yyscanner);
2404
+ yyfree(yyg->yy_buffer_stack , yyscanner);
2158
2405
  yyg->yy_buffer_stack = NULL;
2159
2406
 
2160
2407
  /* Destroy the start condition stack. */
2161
- linguist_yyfree(yyg->yy_start_stack ,yyscanner );
2408
+ yyfree( yyg->yy_start_stack , yyscanner );
2162
2409
  yyg->yy_start_stack = NULL;
2163
2410
 
2164
2411
  /* Reset the globals. This is important in a non-reentrant scanner so the next time
2165
- * linguist_yylex() is called, initialization will occur. */
2412
+ * yylex() is called, initialization will occur. */
2166
2413
  yy_init_globals( yyscanner);
2167
2414
 
2168
2415
  /* Destroy the main struct (reentrant only). */
2169
- linguist_yyfree ( yyscanner , yyscanner );
2416
+ yyfree ( yyscanner , yyscanner );
2170
2417
  yyscanner = NULL;
2171
2418
  return 0;
2172
2419
  }
@@ -2176,18 +2423,21 @@ int linguist_yylex_destroy (yyscan_t yyscanner)
2176
2423
  */
2177
2424
 
2178
2425
  #ifndef yytext_ptr
2179
- static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner)
2426
+ static void yy_flex_strncpy (char* s1, const char * s2, int n , yyscan_t yyscanner)
2180
2427
  {
2181
- register int i;
2428
+ struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2429
+ (void)yyg;
2430
+
2431
+ int i;
2182
2432
  for ( i = 0; i < n; ++i )
2183
2433
  s1[i] = s2[i];
2184
2434
  }
2185
2435
  #endif
2186
2436
 
2187
2437
  #ifdef YY_NEED_STRLEN
2188
- static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
2438
+ static int yy_flex_strlen (const char * s , yyscan_t yyscanner)
2189
2439
  {
2190
- register int n;
2440
+ int n;
2191
2441
  for ( n = 0; s[n]; ++n )
2192
2442
  ;
2193
2443
 
@@ -2195,13 +2445,18 @@ static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
2195
2445
  }
2196
2446
  #endif
2197
2447
 
2198
- void *linguist_yyalloc (yy_size_t size , yyscan_t yyscanner)
2448
+ void *yyalloc (yy_size_t size , yyscan_t yyscanner)
2199
2449
  {
2200
- return (void *) malloc( size );
2450
+ struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2451
+ (void)yyg;
2452
+ return malloc(size);
2201
2453
  }
2202
2454
 
2203
- void *linguist_yyrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner)
2455
+ void *yyrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner)
2204
2456
  {
2457
+ struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2458
+ (void)yyg;
2459
+
2205
2460
  /* The cast to (char *) in the following accommodates both
2206
2461
  * implementations that use char* generic pointers, and those
2207
2462
  * that use void* generic pointers. It works with the latter
@@ -2209,18 +2464,19 @@ void *linguist_yyrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner)
2209
2464
  * any pointer type to void*, and deal with argument conversions
2210
2465
  * as though doing an assignment.
2211
2466
  */
2212
- return (void *) realloc( (char *) ptr, size );
2467
+ return realloc(ptr, size);
2213
2468
  }
2214
2469
 
2215
- void linguist_yyfree (void * ptr , yyscan_t yyscanner)
2470
+ void yyfree (void * ptr , yyscan_t yyscanner)
2216
2471
  {
2217
- free( (char *) ptr ); /* see linguist_yyrealloc() for (char *) cast */
2472
+ struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2473
+ (void)yyg;
2474
+ free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
2218
2475
  }
2219
2476
 
2220
2477
  #define YYTABLES_NAME "yytables"
2221
2478
 
2222
- #line 118 "tokenizer.l"
2223
-
2479
+ #line 143 "tokenizer.l"
2224
2480
 
2225
2481
 
2226
2482