コード例 #1
0
        public HashSet<ulong> GetAllPartiallyMatchingSequences1(params ulong[] sequence)
        {
            return _sync.ExecuteReadOperation(() =>
            {
                if (sequence.Length > 0)
                {
                    EnsureEachLinkExists(_links, sequence);

                    var results = new HashSet<ulong>();
                    for (int i = 0; i < sequence.Length; i++)
                        AllUsagesCore(sequence[i], results);

                    var filteredResults = new HashSet<ulong>();
                    var matcher = new Matcher(this, sequence, filteredResults);
                    matcher.AddAllPartialMatchedToResults(results);
                    return filteredResults;
                }

                return new HashSet<ulong>();
            });
        }