有没有内置函数和工具类的清单和参考文档呢

有没有内置函数和工具类的清单和参考文档呢

1 个赞

你好,MoonBit 正处于 alpha 阶段且发展迅速,内置函数随时可能变化。所以目前暂时没有关于内置函数的文档。

你可以参考这个,并随时在playground中根据智能提示查看它们的类型信息:

func prinln[T : Show](x : T) -> Unit
func print[T : Show](x : T) -> Unit

enum List[T] {
  Nil
  Cons(T,List[T])
}

enum Option[T]{
  None
  Some(T)
}

func abort(x : String) -> Unit

func Bytes::make(len : Int, c : Int) -> Bytes
func op_get(self : Bytes, index : Int) -> Int
func op_set(self : Bytes, index : Int, val : Int) -> Unit
func length(self : Bytes) -> Int

func Array::make[T](len : Int, elem : T) -> Array[T]
func op_get(self : Array[T], index : Int) -> T
func op_set(self : Array[T], index : Int, elem : T) -> Unit
func length(self : Array[T]) -> Int

func String::make(len : Int, elem : Char) -> String
func op_get(self : String, index : Int) -> Char
func op_set(self : String, index : Int, val : Char) -> Unit
func length(self : String) -> Int
func get(self : String, index : Int) -> Char
func set(self : String, index : Int, elem : Int) -> Unit

func to_int(self : Char) -> Int
func Char::from_int(val : Int) -> Char

func to_string(self : Int) -> String
func to_string(self : Int64) -> String
func to_string(self : Char) -> String
func to_string(self : Bool) -> String

func to_int64(self : Int) -> Int64
func to_float64(self : Int) -> Float64
func to_int(self : Int64) -> Int
func to_float64(self : Int64) -> Float64

func lsl(self : Int) -> Int  // 逻辑左移
func lsr(self : Int) -> Int // 逻辑右移
func asr(self : Int) -> Int // 算术右移
func land(self : Int) -> Int // 按位与
func lor(self : Int) -> Int // 按位或
func lxor(self : Int) -> Int // 按位异或

interface Show{
  to_string(Self) -> String
}

interface Eq{
   op_equal(Self, Self) -> Bool
}

interface Compare{
   compare(Self, Self) -> Int
}

interface Default {
  Self::default() -> Self
}
4 个赞