當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


erlang match_spec_run(List, CompiledMatchSpec)用法及代碼示例


match_spec_run(List, CompiledMatchSpec) -> list()
類型:
List = [term()]
CompiledMatchSpec = compiled_match_spec()

執行編譯後指定的匹配匹配規格在術語列表上。學期CompiledMatchSpec是調用的結果 match_spec_compile/1因此是人們想要使用的匹配規範的內部表示。

List 中的每個元素執行匹配,函數返回包含所有結果的列表。如果 List 中的元素不匹配,則不會為該元素返回任何內容。因此,結果列表的長度等於或小於參數List的長度。

例子:

以下兩個調用給出相同的結果(但執行時間肯定不同):

Table = ets:new...
MatchSpec = ...
% The following call...
ets:match_spec_run(ets:tab2list(Table),
                   ets:match_spec_compile(MatchSpec)),
% ...gives the same result as the more common (and more efficient)
ets:select(Table, MatchSpec),
注意

該函數在普通代碼中的用途有限。它由以下人員使用dets模塊來執行dets:select()操作和交易期間由 Mnesia 執行。

相關用法


注:本文由純淨天空篩選整理自erlang.org大神的英文原創作品 match_spec_run(List, CompiledMatchSpec) -> list()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。