簡體   English   中英

將Java數組映射到Frege

[英]Mapping Java Array to Frege

讓我們說我想映射Java代碼:

package mypackage;

class A {
    public String[] values() {
       return new String[]{"one", "two"};
    }
}

對弗雷格的同行:

data AA = pure native mypackage.A where
    native values :: AA -> [String]

目前弗雷格抱怨:

error: incompatible types: String[] cannot be converted to TList

如何將Java數組映射到Frege?

該消息實際上來自Java編譯器。

與Java數組對應的Frege類型

Foo[]

JArray Bar

其中Bar是與Foo對應的Frege類型。

所以,在你的情況下它應該是

JArray String

請注意,從弗雷格的角度來看,這是一個不可變的數組。 如果你想要一個可變數組,請使用

Mutable s (JArray String)

但是,當然,它只能用於ST monad。

以下是相關在線文檔的鏈接: http//www.frege-lang.org/doc/frege/prelude/PreludeArrays.html因為這是Prelude的一部分,所以您無需導入任何內容即可使用它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM