国产chinesehdxxxx野外,国产av无码专区亚洲av琪琪,播放男人添女人下边视频,成人国产精品一区二区免费看,chinese丰满人妻videos

Elixir 別名

2023-12-15 14:27 更新

alias允許你為任何具名模塊賦予別名.想象一下我們的Math模塊要使用一個(gè)特殊的列表執(zhí)行方法來(lái)做特定的數(shù)學(xué)操作:

defmodule Math do
  alias Math.List, as: List
end

從現(xiàn)在起,任何提到List的地方都會(huì)自動(dòng)擴(kuò)展成Math.List.如果有人想訪問(wèn)原始的List,就需要在之前加上模塊名Elixir.:

List.flatten             #=> uses Math.List.flatten
Elixir.List.flatten      #=> uses List.flatten
Elixir.Math.List.flatten #=> uses Math.List.flatten
所有在Elixir中定義的模塊,都定義在一個(gè)主要Elixir命名空間中.為了方便,在調(diào)用它們時(shí)你可以省略"Elixir".

別名經(jīng)常用于定義縮寫(xiě).事實(shí)上,調(diào)用alias時(shí)不帶:as,就會(huì)自動(dòng)將模塊名的最后部分設(shè)為別名.例如:

alias Math.List

等同于

alias Math.List, as: List

注意alias確定了語(yǔ)法范圍,能讓你在特定的函數(shù)中設(shè)置別名:

defmodule Math do
  def plus(a, b) do
    alias Math.List
    # ...
  end

  def minus(a, b) do
    # ...
  end
end

在上述例子中,由于我們是在plus/2函數(shù)中調(diào)用的alias,所以別名只在函數(shù)plus/2中可用.對(duì)minus/2沒(méi)有影響.

以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)