Пример #1
0
		/// <exception cref="NGit.Errors.MissingObjectException"></exception>
		/// <exception cref="NGit.Errors.IncorrectObjectTypeException"></exception>
		/// <exception cref="System.IO.IOException"></exception>
		internal DateRevQueue(Generator s)
		{
			for (; ; )
			{
				RevCommit c = s.Next();
				if (c == null)
				{
					break;
				}
				Add(c);
			}
		}
Пример #2
0
 /// <exception cref="NGit.Errors.MissingObjectException"></exception>
 /// <exception cref="NGit.Errors.IncorrectObjectTypeException"></exception>
 /// <exception cref="System.IO.IOException"></exception>
 internal BlockRevQueue(Generator s)
 {
     free = new BlockRevQueue.BlockFreeList();
     outputType = s.OutputType();
     s.ShareFreeList(this);
     for (; ; )
     {
         RevCommit c = s.Next();
         if (c == null)
         {
             break;
         }
         Add(c);
     }
 }
Пример #3
0
 /// <summary>Create a new sorter and completely spin the generator.</summary>
 /// <remarks>
 /// Create a new sorter and completely spin the generator.
 /// <p/>
 /// When the constructor completes the supplied generator will have no
 /// commits remaining, as all of the commits will be held inside of this
 /// generator's internal buffer.
 /// </remarks>
 /// <param name="s">generator to pull all commits out of, and into this buffer.</param>
 /// <exception cref="NGit.Errors.MissingObjectException">NGit.Errors.MissingObjectException
 /// 	</exception>
 /// <exception cref="NGit.Errors.IncorrectObjectTypeException">NGit.Errors.IncorrectObjectTypeException
 /// 	</exception>
 /// <exception cref="System.IO.IOException">System.IO.IOException</exception>
 internal TopoSortGenerator(Generator s)
 {
     pending = new FIFORevQueue();
     outputType = s.OutputType() | SORT_TOPO;
     s.ShareFreeList(pending);
     for (; ; )
     {
         RevCommit c = s.Next();
         if (c == null)
         {
             break;
         }
         foreach (RevCommit p in c.parents)
         {
             p.inDegree++;
         }
         pending.Add(c);
     }
 }
Пример #4
0
		/// <param name="w"></param>
		/// <param name="s">Parent generator</param>
		/// <exception cref="NGit.Errors.MissingObjectException">NGit.Errors.MissingObjectException
		/// 	</exception>
		/// <exception cref="NGit.Errors.IncorrectObjectTypeException">NGit.Errors.IncorrectObjectTypeException
		/// 	</exception>
		/// <exception cref="System.IO.IOException">System.IO.IOException</exception>
		internal DepthGenerator(DepthWalk w, Generator s)
		{
			pending = new FIFORevQueue();
			walk = (RevWalk)w;
			this.depth = w.GetDepth();
			this.UNSHALLOW = w.GetUnshallowFlag();
			this.REINTERESTING = w.GetReinterestingFlag();
			s.ShareFreeList(pending);
			// Begin by sucking out all of the source's commits, and
			// adding them to the pending queue
			for (; ; )
			{
				RevCommit c = s.Next();
				if (c == null)
				{
					break;
				}
				if (((NGit.Revwalk.Depthwalk.Commit)c).GetDepth() == 0)
				{
					pending.Add(c);
				}
			}
		}
Пример #5
0
		internal RewriteGenerator(Generator s)
		{
			source = s;
		}
Пример #6
0
		internal DelayRevQueue(Generator g)
		{
			pending = g;
			delay = new FIFORevQueue();
		}
Пример #7
0
		/// <exception cref="NGit.Errors.MissingObjectException"></exception>
		/// <exception cref="NGit.Errors.IncorrectObjectTypeException"></exception>
		/// <exception cref="System.IO.IOException"></exception>
		internal FIFORevQueue(Generator s) : base(s)
		{
		}
		internal FixUninterestingGenerator(Generator g)
		{
			pending = g;
		}
Пример #9
0
			internal InitialGenerator(BoundaryGenerator _enclosing, RevWalk w, Generator s)
			{
				this._enclosing = _enclosing;
				this.walk = w;
				this.held = new FIFORevQueue();
				this.source = s;
				this.source.ShareFreeList(this.held);
			}
Пример #10
0
		internal BoundaryGenerator(RevWalk w, Generator s)
		{
			g = new BoundaryGenerator.InitialGenerator(this, w, s);
		}