nuget server logo nuget api documents
↑

API Docs / SMRUCC.genomics.Analysis.RetroPath / RuleFilter

RuleFilter

Full name SMRUCC.genomics.Analysis.RetroPath.Search.RuleFilter Assembly SMRUCC.genomics.Analysis.RetroPath Members 7

规则集的按方向元素需求表:用于在实际匹配前快速排除不可能命中的规则。

00 Remarks

需求表在构造期算一次(规则数 × 2,开销可忽略),之后只读共享、线程安全。

01 Syntax

SMRUCC.genomics.Analysis.RetroPath.Search.RuleFilter

02 Methods

NameOverloadsSummary
.ctor 1 为规则集构建元素需求表。
ElementCounts 1 统计分子中各元素的原子数(空分子返回空表)。
CanForward 1 该规则正向是否可能匹配给定分子
CanReverse 1 该规则逆向是否可能匹配给定分子
ElementNeeds 1 模式中「参与匹配的原子」的元素多重集——即 PatternMatcher 里 bondedCls 所对应的那些模式原子。元素通配(Nothing)不构成约束。

03 Fields

NameOverloadsSummary
_forward 1 第 i 条规则正向(反应物模式)的元素需求:每项为 (元素, 需要几个)。
_reverse 1 第 i 条规则逆向(产物模式)的元素需求。

04 Members

method .ctor #
#ctor(List(Of Rule))

为规则集构建元素需求表。

Parameters
NameTypeDescription
rulesList(Of Rule)

参与搜索的广义规则集。

method ElementCounts #
ElementCounts(Molecule)

统计分子中各元素的原子数(空分子返回空表)。

method CanForward #
CanForward(Int32, Dictionary(Of String, Int32))

该规则正向是否可能匹配给定分子

method CanReverse #
CanReverse(Int32, Dictionary(Of String, Int32))

该规则逆向是否可能匹配给定分子

method ElementNeeds #
ElementNeeds(Pattern)

模式中「参与匹配的原子」的元素多重集——即 PatternMatcher 里 bondedCls 所对应的那些模式原子。元素通配(Nothing)不构成约束。

field _forward #
_forward

第 i 条规则正向(反应物模式)的元素需求:每项为 (元素, 需要几个)。

field _reverse #
_reverse

第 i 条规则逆向(产物模式)的元素需求。