示例#1
0
 /// <summary>
 /// Notifies the script builder that this builder should be called again once the engine finishes parsing a chunk. This behaves as a FILO stack.
 /// </summary>
 /// <param name="builder">The builder to be notified.</param>
 public void WaitForChunkFinish(Builder builder)
 {
     _builderQueue.Push(builder);
 }
示例#2
0
 protected void RegisterInternalBuilder(Builder builder, int weight = 0)
 {
     if (!_internalBuilders.ContainsKey(weight))
     {
         _internalBuilders[weight] = new List<Builder>();
     }
     if (_internalBuilders[weight].Contains(builder))
     {
         throw new Exception("Cannot add the same parser twice!");
     }
     _internalBuilders[weight].Add(builder);
 }
示例#3
0
 public void RegisterBuilder(Builder builder, int weight = 0)
 {
     if (!_customBuilders.ContainsKey(weight))
     {
         _customBuilders[weight] = new List<Builder>();
     }
     if (_customBuilders[weight].Contains(builder))
     {
         throw new Exception("Cannot add the same parser twice!");
     }
     _customBuilders[weight].Add(builder);
 }