JavaCC

JavaCC
Perustieto

Nykyinen  versio 7.0.10
(23. marraskuuta 2020)
käyttöjärjestelmä Käyttöjärjestelmät, joissa on Java -runtime -ympäristö
ohjelmointikieli Java
kategoria Parser -generaattori
Lisenssi BSD -lisenssi
www.javacc.org

JavaCC ( Java C ompiler C ompiler ) on Lexer- ja jäsennin , joka Java- sovelluksessa on toteutettu ja Java- ja ++ C- lähteenä tuotettu lähdekoodi. JavaCC on avoimen lähdekoodin ja julkaistu BSD -lisenssin ehdoilla .

JavaCC toimii samalla tavalla kuin tunnettu ohjelma Yacc , mutta käyttää eri menetelmää jäsentämisestä tiedot: JavaCC luo LL (k) jäsennin , kun taas Yacc muodostaa LALR (1) jäsennin . Kielioppi on rakenteeltaan hieman eri tavalla kuin se olisi kanssa Yacc.

Ohjelmat ja kirjastot, jotka käyttävät JavaCC: tä sisäisesti

  • Avoimen lähdekoodin hakukone puitteet Lucene käyttää JavaCC tuottaa lexer ja kyselyn jäsennin.
  • Avoimen lähdekoodin mallimoottori Velocity käyttää JavaCC: tä jäsentämistoimintoihinsa.
  • Lähdetekstien staattisen koodianalyysin PMD- työkalu käyttää JavaCC: tä sisäisesti käyttäjän määrittämien sääntöjen käsittelyyn.
  • Java API on cyc ontologian projekti käyttää JavaCC sen jäsennin toimintoihin.

Katso myös

  • JFlex (Java -skannausgeneraattori, joka on kirjoitettu Javalla)
  • SableCC (kääntäjä -kääntäjä LALR (1) -jarvaajalle Javassa)
  • ANTLR (kääntäjä -kääntäjä LL: lle (*) - jäsennys eri kohdekielillä)
  • Coco / R (kääntäjä -kääntäjä LL (k) -jäsenelle eri kohdekielillä)

kirjallisuus

  • Tom Copeland: Jäsenten luominen JavaCC: llä . 2. painos. Centennial Books, Alexandria, 2009, ISBN 978-0-9762214-3-2 .
  • Anthony J.Dos Reis, Laura L.Dos Reis: Kääntäjärakentaminen Javan, JavaCC: n ja Yaccin avulla . 1. painos. John Wiley & Sons, 2012, ISBN 978-0-470-94959-7 .

Yksilöllisiä todisteita

  1. https://github.com/javacc/javacc/releases/tag/javacc-7.0.10
  2. JavaCC ilmoittaa postituslistan Java.net -sivustossa. (Ei enää saatavilla verkossa.) Arkistoitu alkuperäisestä 11. huhtikuuta 2016 ; luettu 9. syyskuuta 2013 . Tiedot: Arkistolinkki lisättiin automaattisesti eikä sitä ole vielä tarkistettu. Tarkista alkuperäinen ja arkistolinkki ohjeiden mukaisesti ja poista tämä ilmoitus. @1@ 2Malli: Webachiv / IABot / java.net
  3. Apache Lucene -paketin dokumentaatio. Haettu 9. syyskuuta 2013 .
  4. ^ Apache Velocity -hanke - Vaaditut työkalut. Haettu 9. syyskuuta 2013 .
  5. PMD: n mukauttaminen - Kuinka kirjoittaa PMD -sääntö. Haettu 9. syyskuuta 2013 .