Exemple #1
0
 protected void AppendChild(RCValue scalar)
 {
     _value = new RCBlock(_value, _name, ":", scalar);
     if (_state == JSONState.Value)
     {
         _name  = "";
         _state = JSONState.Name;
     }
 }
Exemple #2
0
 protected void EndBlock()
 {
     if (_values.Count > 0)
     {
         RCBlock child = _value;
         _name  = _names.Pop();
         _value = _values.Pop();
         _state = _states.Pop();
         AppendChild(child);
     }
 }
Exemple #3
0
 public override void AcceptBlock(RCToken token)
 {
     if (token.Text.Equals("{"))
     {
         StartBlock();
         _state = JSONState.Name;
     }
     else if (token.Text.Equals("}"))
     {
         EndBlock();
     }
 }
Exemple #4
0
 public override void AcceptString(RCToken token)
 {
     if (_state == JSONState.Name)
     {
         _name  = token.ParseString(_lexer);
         _state = JSONState.Value;
     }
     else
     {
         AppendChild(new RCString(token.ParseString(_lexer)));
     }
 }
Exemple #5
0
 public override void AcceptCube(RCToken token)
 {
     if (token.Text.Equals("["))
     {
         StartBlock();
         _state = JSONState.Default;
     }
     else if (token.Text.Equals("]"))
     {
         EndBlock();
     }
 }