我正在爲Free Pascal提供SWIG模塊。 Pascal是不區分大小寫的語言。符號名稱不區分大小寫。 像AName和aName這樣的兩個不同的C名字在Pascal中將是相同的ANAME。 我知道SWIG支持超載。但不區分大小寫並不是真正的超載。 (順便說一句,Pascal支持自然超載,不需要重命名Pascal中的重載函數)。SWIG。 FreePascal模塊。不區分大小寫的名稱
我需要什麼,對於C AName和aName,SWIG應該自動在Pascal中創建AName和aName_SWIG_1。
我目前的做法:
- 爲每名(大寫),我通過在同一水平以前的兄弟姐妹,有相同的大寫的符號搜索:名稱。
- 如果找到N個兄弟,我將SWIG_N設置爲新屬性「sym:cisuffix」
- 當爲Pascal生成名稱時,我檢查是否存在「sym:cisuffix」,並將其附加到名稱。
有沒有更好的方法?
謝謝?