Esempio n. 1
0
 public void PushBlock(Block block)
 {
     block.Parent = ActiveBlock;
     ActiveBlock.AddBlock(block);
     ActiveBlock = block;
 }
Esempio n. 2
0
 public void PushBlock(int kind, object obj = null)
 {
     var block = new Block { Kind = kind, Object = obj };
     PushBlock(block);
 }
Esempio n. 3
0
 public BlockGenerator()
 {
     RootBlock = new Block();
     ActiveBlock = RootBlock;
 }
Esempio n. 4
0
 public void AddBlock(Block block)
 {
     ActiveBlock.AddBlock(block);
 }
Esempio n. 5
0
        //public override string ToString()
        //{
        //    return string.Format("{0} {1}", Kind, Text);
        //}
        public void AddBlock(Block block)
        {
            if (Text.StringBuilder.Length != 0 || hasIndentChanged)
            {
                hasIndentChanged = false;
                var newBlock = new Block { Text = Text.Clone(), isSubBlock = true };
                Text.StringBuilder.Clear();

                AddBlock(newBlock);
            }

            block.Parent = this;
            Blocks.Add(block);
        }