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 match(Table, Pattern)用法及代码示例
- erlang match(Subject, Pattern, Options)用法及代码示例
- erlang matches(Subject, Pattern, Options)用法及代码示例
- erlang max用法及代码示例
- erlang make_dir用法及代码示例
- erlang make_tuple(Arity, InitialValue)用法及代码示例
- erlang make_tuple(Arity, DefaultValue, InitList)用法及代码示例
- erlang map_get(Key, Map)用法及代码示例
- erlang map_size(Map)用法及代码示例
- erlang max(Term1, Term2)用法及代码示例
- erlang map(Fun, Orddict1)用法及代码示例
- erlang map(Fun, MapOrIter)用法及代码示例
- erlang mapfoldl(Fun, Acc0, List1)用法及代码示例
- erlang make_tar(Name)用法及代码示例
- erlang member用法及代码示例
- erlang min用法及代码示例
- erlang merge用法及代码示例
- erlang memory用法及代码示例
- erlang memory()用法及代码示例
- erlang min(Term1, Term2)用法及代码示例
- erlang monitor(Type :: process, Item :: monitor_process_identifier())用法及代码示例
- erlang monitor(Type :: process, Item :: monitor_process_identifier(), Opts :: [monitor_option()])用法及代码示例
- erlang merge(Fun, Orddict1, Orddict2)用法及代码示例
- erlang module(AbsForms)用法及代码示例
- erlang monitor(Socket)用法及代码示例
注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 match_spec_run(List, CompiledMatchSpec) -> list()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。