[英]Is inheritance possible in JFlex?
我對JFlex和JSyntaxPane相當陌生,盡管我設法為XPath編寫了一個詞法分析器 。
我發現自己遇到的問題是,我正在開發一個項目,該項目支持具有一些專有功能的XPath的子集。 討厭,我知道。
如果這是一個常規的Java問題,我將轉向繼承,但是通過讓一個詞法分析器擴展先前生成的詞法分析器來實現繼承似乎是不可能的。
例如
import jsyntaxpane.Token;
import jsyntaxpane.TokenType;
%%
%public
%class ProprietaryLexer
%extends XPathLexer
%unicode
%char
%type Token
這似乎會導致大量錯誤,告訴我無法擴展某些最終方法。 這是JSyntaxpane中DefaultJFlexLexer特有的問題,還是我做錯了? 有沒有人遇到過類似的情況,並且找到了在大量詞法分析器中實現某種即席繼承的方法?
JFlex生成了幾種最終方法,因此產生了錯誤。 我可以想到兩種可能的解決方法:
XPathLexer
復制到ProprietaryLexer
並根據需要擴展它們。 但是,如果JFlex具有%inherit
命令,那肯定會很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.