internal SpanScorer(Spans spans, Weight weight, Similarity similarity, byte[] norms) : base(similarity) { this.spans = spans; this.norms = norms; this.weight = weight; this.value_Renamed = weight.Value; }
protected internal SpanScorer(Spans spans, Weight weight, Similarity similarity, byte[] norms):base(similarity) { this.spans = spans; this.norms = norms; this.weight = weight; this.value_Renamed = weight.Value; if (this.spans.Next()) { doc = - 1; } else { doc = NO_MORE_DOCS; more = false; } }
public SpansCell(NearSpans enclosingInstance, Spans spans, int index) { InitBlock(enclosingInstance); this.spans = spans; this.index = index; }
// Get the payloads associated with all underlying subspans public virtual void GetPayloads(Spans[] subSpans) { for (var i = 0; i < subSpans.Length; i++) { var span = subSpans[i] as NearSpansOrdered; if (span != null) { if (span.PayloadAvailable) { ProcessPayloads(span.Payload, subSpans[i].Start(), subSpans[i].End()); } GetPayloads(span.SubSpans); } else { var unordered = subSpans[i] as NearSpansUnordered; if (unordered != null) { if (unordered.PayloadAvailable) { ProcessPayloads(unordered.Payload, subSpans[i].Start(), subSpans[i].End()); } GetPayloads(unordered.SubSpans); } } } }
// Get the payloads associated with all underlying subspans public virtual void GetPayloads(Spans[] subSpans) { for (int i = 0; i < subSpans.Length; i++) { if (subSpans[i] is NearSpansOrdered) { if (((NearSpansOrdered)subSpans[i]).PayloadAvailable) { ProcessPayloads(((NearSpansOrdered)subSpans[i]).Payload, subSpans[i].Start(), subSpans[i].End()); } GetPayloads(((NearSpansOrdered)subSpans[i]).SubSpans); } else if (subSpans[i] is NearSpansUnordered) { if (((NearSpansUnordered)subSpans[i]).PayloadAvailable) { ProcessPayloads(((NearSpansUnordered)subSpans[i]).Payload, subSpans[i].Start(), subSpans[i].End()); } GetPayloads(((NearSpansUnordered)subSpans[i]).SubSpans); } } }
public void ClearSpanBuffer() { Spans.Clear(); }
internal QueryTextSpan GetSpanWithCurrentTextCursor() => Spans.OfType <QueryTextSpan>().SingleOrDefault();
public Parenthetical(FountainBlockElement Parenthetical) { FSarpParenthetical = (FountainBlockElement.Parenthetical)Parenthetical; Spans = new Spans(FSarpParenthetical.Item1); Range = FSarpParenthetical.Item2; }
public Dialogue(FountainBlockElement Dialogue) { FSharpDialogue = (FountainBlockElement.Dialogue)Dialogue; Spans = new Spans(FSharpDialogue.Item1); Range = FSharpDialogue.Item2; }
public void ClearSelectedSpan() { Spans[Spans.IndexOf(_selectedSpan)].Clear(); SelectedUserSpan.Clear(); }
/// <summary> /// returns the points uniformly distributed over the entries /// </summary> /// <returns></returns> public IEnumerable <Point> GetEntryPoints() { return(Spans.SelectMany(SpanPoints)); }
//每个RuleSet节点的样子:<RuleSet ignorecase = "false">......</RuleSet> public HighlightRuleSet(XmlElement el) { if (el.Attributes["name"] != null) { Name = el.Attributes["name"].InnerText; } if (el.Attributes["noescapesequences"] != null) { noEscapeSequences = Boolean.Parse(el.Attributes["noescapesequences"].InnerText); } if (el.Attributes["reference"] != null) { reference = el.Attributes["reference"].InnerText; } if (el.Attributes["ignorecase"] != null) { ignoreCase = Boolean.Parse(el.Attributes["ignorecase"].InnerText); } for (int i = 0; i < Delimiters.Length; ++i) { Delimiters[i] = false; } if (el["Delimiters"] != null) { string delimiterString = el["Delimiters"].InnerText; foreach (char ch in delimiterString) { Delimiters[(int)ch] = true; //将当前字符置为分隔符. } } XmlNodeList nodes = null; //以下是初始化Span. nodes = el.GetElementsByTagName("Span"); foreach (XmlElement el2 in nodes) { Spans.Add(new Span(el2)); } keyWords = new LookupTable(!IgnoreCase); prevMarkers = new LookupTable(!IgnoreCase); nextMarkers = new LookupTable(!IgnoreCase); //以下是初始化KeyWords. nodes = el.GetElementsByTagName("KeyWords"); foreach (XmlElement el2 in nodes) { HighlightColor color = new HighlightColor(el2); XmlNodeList keys = el2.GetElementsByTagName("Key"); foreach (XmlElement node in keys) { keyWords[node.Attributes["word"].InnerText] = color; //为每个关键字都赋予一个HighLightColor对象. } } //每个MarkPrevious节点的样子: //<MarkPrevious bold = "true" italic = "false" color = "MidnightBlue">(</MarkPrevious> nodes = el.GetElementsByTagName("MarkPrevious"); foreach (XmlElement el2 in nodes) { PrevMarker prev = new PrevMarker(el2); prevMarkers[prev.What] = prev; } //每个MarkFollowing节点的样子和MarkFollowing的样子完全一样. nodes = el.GetElementsByTagName("MarkFollowing"); foreach (XmlElement el2 in nodes) { NextMarker next = new NextMarker(el2); nextMarkers[next.What] = next; } }
private void InitBlock(IndexReader reader, SpanLastQuery enclosingInstance) { this.reader = reader; this.enclosingInstance = enclosingInstance; this.spans = this.Enclosing_Instance.match.GetSpans(reader); }
public int GetSpanCount() { return(Spans.Count()); }
public Centered(FountainBlockElement Centered) { FSharpCentered = (FountainBlockElement.Centered)Centered; Spans = new Spans(FSharpCentered.Item1); Range = FSharpCentered.Item2; }
/// <summary> /// Initializes a new instance of the <see cref="HighlightRuleSet"/> class. /// </summary> /// <param name="el">The XML element that describes the rule set.</param> public HighlightRuleSet(XmlElement el) { if (el.Attributes["name"] != null) { Name = el.Attributes["name"].InnerText; } if (el.HasAttribute("escapecharacter")) { escapeCharacter = el.GetAttribute("escapecharacter")[0]; } if (el.Attributes["reference"] != null) { reference = el.Attributes["reference"].InnerText; } if (el.Attributes["ignorecase"] != null) { ignoreCase = Boolean.Parse(el.Attributes["ignorecase"].InnerText); } if (el.Attributes["highlightDigits"] != null) { highlightDigits = Boolean.Parse(el.Attributes["highlightDigits"].InnerText); } for (int i = 0; i < Delimiters.Length; ++i) { delimiters[i] = false; } if (el["Delimiters"] != null) { string delimiterString = el["Delimiters"].InnerText; foreach (char ch in delimiterString) { delimiters[ch] = true; } } keyWords = new LookupTable(!IgnoreCase); prevMarkers = new LookupTable(!IgnoreCase); nextMarkers = new LookupTable(!IgnoreCase); XmlNodeList nodes = el.GetElementsByTagName("KeyWords"); foreach (XmlElement el2 in nodes) { HighlightColor color = new HighlightColor(el2); XmlNodeList keys = el2.GetElementsByTagName("Key"); foreach (XmlElement node in keys) { keyWords[node.Attributes["word"].InnerText] = color; } } nodes = el.GetElementsByTagName("Span"); foreach (XmlElement el2 in nodes) { Spans.Add(new Span(el2)); } nodes = el.GetElementsByTagName("MarkPrevious"); foreach (XmlElement el2 in nodes) { PrevMarker prev = new PrevMarker(el2); prevMarkers[prev.What] = prev; } nodes = el.GetElementsByTagName("MarkFollowing"); foreach (XmlElement el2 in nodes) { NextMarker next = new NextMarker(el2); nextMarkers[next.What] = next; } }
public Lyrics(FountainBlockElement Lyrics) { FSharpLyrics = (FountainBlockElement.Lyrics)Lyrics; Spans = new Spans(FSharpLyrics.Item1); Range = FSharpLyrics.Item2; }
public HighlightRuleSet(XmlElement el) { XmlNodeList nodes; if (el.Attributes["name"] != null) { Name = el.Attributes["name"].InnerText; } if (el.Attributes["noescapesequences"] != null) { noEscapeSequences = Boolean.Parse(el.Attributes["noescapesequences"].InnerText); } if (el.Attributes["reference"] != null) { reference = el.Attributes["reference"].InnerText; } if (el.Attributes["ignorecase"] != null) { ignoreCase = Boolean.Parse(el.Attributes["ignorecase"].InnerText); } for (int i = 0; i < Delimiters.Length; ++i) { delimiters[i] = false; } if (el["Delimiters"] != null) { string delimiterString = el["Delimiters"].InnerText; foreach (char ch in delimiterString) { delimiters[(int)ch] = true; } } // Spans = new LookupTable(!IgnoreCase); keyWords = new LookupTable(!IgnoreCase); prevMarkers = new LookupTable(!IgnoreCase); nextMarkers = new LookupTable(!IgnoreCase); nodes = el.GetElementsByTagName("KeyWords"); foreach (XmlElement el2 in nodes) { HighlightColor color = new HighlightColor(el2); XmlNodeList keys = el2.GetElementsByTagName("Key"); foreach (XmlElement node in keys) { keyWords[node.Attributes["word"].InnerText] = color; } } nodes = el.GetElementsByTagName("Span"); foreach (XmlElement el2 in nodes) { Spans.Add(new Span(el2)); /* * Span span = new Span(el2); * Spans[span.Begin] = span;*/ } nodes = el.GetElementsByTagName("MarkPrevious"); foreach (XmlElement el2 in nodes) { PrevMarker prev = new PrevMarker(el2); prevMarkers[prev.What] = prev; } nodes = el.GetElementsByTagName("MarkFollowing"); foreach (XmlElement el2 in nodes) { NextMarker next = new NextMarker(el2); nextMarkers[next.What] = next; } }
public Synopses(FountainBlockElement Synopses) { FSharpSynopses = (FountainBlockElement.Synopses)Synopses; Spans = new Spans(FSharpSynopses.Item1); Range = FSharpSynopses.Item2; }
public ISpan this[int key] { get { return(Spans.ElementAt(key)); } set { throw new InvalidOperationException(); } }
public void RecordSpan(SpanData span) { Spans.Add(span); }
public IEnumerator <ISpan> GetEnumerator() { return(Spans.GetEnumerator()); }
public RootSpan() { Spans.Add(this); }
IEnumerator IEnumerable.GetEnumerator() { return(Spans.GetEnumerator()); }
protected internal PayloadNearSpanScorer(PayloadNearQuery outerInstance, Spans spans, Weight weight, Similarity similarity, Similarity.SimScorer docScorer) : base(spans, weight, docScorer) { this.OuterInstance = outerInstance; this.Spans = spans; }
internal void Merge(Spans other) => inner.AddRange(other.inner);
// protected internal override bool SetFreqCurrentDoc() { if (!More) { return false; } Doc = Spans.Doc(); Freq_Renamed = 0.0f; PayloadScore = 0; PayloadsSeen = 0; do { int matchLength = Spans.End() - Spans.Start(); Freq_Renamed += DocScorer.ComputeSlopFactor(matchLength); Spans[] spansArr = new Spans[1]; spansArr[0] = Spans; GetPayloads(spansArr); More = Spans.Next(); } while (More && (Doc == Spans.Doc())); return true; }
/// <summary> /// Method who will add, update and remove one child /// </summary> /// <param name="databaseAccessRequest"></param> /// <returns></returns> private static async Task EFCoreBulkUpdateExtensionMethodUpdateChilsAsync(DatabaseAccessRequest databaseAccessRequest) { Console.ForegroundColor = ConsoleColor.Yellow; using (var context = new EfPocEntitiesEFCore(databaseAccessRequest)) { //context.ChangeTracker.AutoDetectChangesEnabled = false; try { Stopwatch w = new Stopwatch(); w.Start(); Console.WriteLine("Scenario: Add, Update, Remove Childs"); //Get all Members var m1200 = await context.Members .Include(member => member.Spans) .FirstOrDefaultAsync(m => m.Id == 1200); var m1210 = await context.Members .Include(member => member.Spans) .FirstOrDefaultAsync(m => m.Id == 1210); var m1220 = await context.Members .Include(member => member.Spans) .FirstOrDefaultAsync(m => m.Id == 1220); //Add new span var span = new Spans { MemberId = m1200.Id, SpanType = "SECD", SpanValue = $"New {m1200.Id}", StartDate = DateTime.Now }; m1200.Spans.Add(span); //Update span foreach (var s in m1210.Spans) { s.SpanValue = "UPD Value"; } //remove Spans m1220.Spans.Clear(); await context.SaveChangesAsync(); ///For bulk operations (1000s), we should create different collections for each instruction (add or update and delete) Console.WriteLine($"Finished in {w.ElapsedMilliseconds}ms"); Console.WriteLine("Getting member with new spans"); _showValues(await _getMember(context, 1200)); Console.WriteLine("Getting a member with updated spans"); _showValues(await _getMember(context, 1210)); Console.WriteLine("Getting a member with deleted spans"); _showValues(await _getMember(context, 1220)); } catch (Exception e) { Console.WriteLine(e); } } }
protected internal PayloadNearSpanScorer(PayloadNearQuery outerInstance, Spans spans, Weight weight, Similarity similarity, Similarity.SimScorer docScorer) : base(spans, weight, docScorer) { this.outerInstance = outerInstance; this.spans = spans; }
public HighlightRuleSet(XmlElement el) { XmlNodeList nodes; if (el.Attributes["name"] != null) { Name = el.Attributes["name"].InnerText; } if (el.HasAttribute("escapecharacter")) { EscapeCharacter = el.GetAttribute("escapecharacter")[0]; } if (el.Attributes["reference"] != null) { Reference = el.Attributes["reference"].InnerText; } if (el.Attributes["ignorecase"] != null) { IgnoreCase = bool.Parse(el.Attributes["ignorecase"].InnerText); } for (var i = 0; i < Delimiters.Length; ++i) { Delimiters[i] = false; } if (el["Delimiters"] != null) { var delimiterString = el["Delimiters"].InnerText; foreach (var ch in delimiterString) { Delimiters[ch] = true; } } // Spans = new LookupTable(!IgnoreCase); KeyWords = new LookupTable(!IgnoreCase); PrevMarkers = new LookupTable(!IgnoreCase); NextMarkers = new LookupTable(!IgnoreCase); nodes = el.GetElementsByTagName("KeyWords"); foreach (XmlElement el2 in nodes) { var color = new HighlightColor(el2); var keys = el2.GetElementsByTagName("Key"); foreach (XmlElement node in keys) { KeyWords[node.Attributes["word"].InnerText] = color; } } nodes = el.GetElementsByTagName("Span"); foreach (XmlElement el2 in nodes) { Spans.Add(new Span(el2)); } /* * Span span = new Span(el2); * Spans[span.Begin] = span;*/ nodes = el.GetElementsByTagName("MarkPrevious"); foreach (XmlElement el2 in nodes) { var prev = new PrevMarker(el2); PrevMarkers[prev.What] = prev; } nodes = el.GetElementsByTagName("MarkFollowing"); foreach (XmlElement el2 in nodes) { var next = new NextMarker(el2); NextMarkers[next.What] = next; } }