Elixir Language
행동
수색…
소개
동작은 다른 모듈에서 구현할 수있는 기능 사양 목록입니다. 다른 언어의 인터페이스와 비슷합니다.
다음은 예제 동작입니다.
defmodule Parser do
@callback parse(String.t) :: any
@callback extensions() :: [String.t]
end
그리고 그것을 구현하는 모듈 :
defmodule JSONParser do
@behaviour Parser
def parse(str), do: # ... parse JSON
def extensions, do: ["json"]
end
위의 @behaviour
모듈 속성은이 모듈이 Parser 모듈에 정의 된 모든 함수를 정의 할 것으로 예상된다는 것을 나타냅니다. 누락 된 함수는 정의되지 않은 동작 함수 컴파일 오류를 발생시킵니다.
모듈은 @behaviour
속성을 여러 개 가질 수 있습니다.
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow