Beispiel #1
0
        public Projection(ITextDocument document, IReadOnlyList <ProjectedSegment> projectedSegments)
        {
            if (document == null)
            {
                throw new ArgumentNullException(nameof(document));
            }
            this.Document = document;

            for (int i = 0; i < projectedSegments.Count; i++)
            {
                var p         = projectedSegments [i];
                var original  = new ProjectedTreeSegment(p.Offset, p.Length);
                var projected = new ProjectedTreeSegment(p.ProjectedOffset, p.Length);
                original.LinkedTo  = projected;
                projected.LinkedTo = original;
                originalProjections.Add(original);
                projectedProjections.Add(projected);
            }
        }
		public Projection (ITextDocument document, IReadOnlyList<ProjectedSegment> projectedSegments)
		{
			if (document == null)
				throw new ArgumentNullException (nameof (document));
			this.Document = document;

			for (int i = 0; i < projectedSegments.Count; i++) {
				var p = projectedSegments [i];
				var original = new ProjectedTreeSegment (p.Offset, p.Length);
				var projected =  new ProjectedTreeSegment (p.ProjectedOffset, p.Length);
				original.LinkedTo = projected;
				projected.LinkedTo = original;
				originalProjections.Add (original);
				projectedProjections.Add (projected);
			}
		}