public override void Visit(PropertyNode node, Context context) { context._sb.Clear(); node.Expression.Accept(this, context); context._yaml.WriteProperty(CharacterUtils.EscapeName(node.Identifier), context._sb.ToString()); }
public override void Visit(FunctionNode node, Context context) { context._sb.Clear(); context._sb.Append(CharacterUtils.EscapeName(node.Identifier)).Append('('); var isFirst = true; foreach (var arg in node.Args) { if (!isFirst) { context._sb.Append(", "); } isFirst = false; arg.Accept(this, context); } context._sb.Append(")"); var property = context._sb.ToString(); context._sb.Clear(); context._yaml.WriteStartObject(property); foreach (var metadataBlock in node.Metadata) { metadataBlock.Accept(this, context); } context._yaml.WriteEndObject(); }
public override void Visit(TypeNode node, Context context) { context._sb.Append(CharacterUtils.EscapeName(node.TypeName)); if (!string.IsNullOrEmpty(node.OptionalVariant)) { context._sb.Append("."); context._sb.Append(CharacterUtils.EscapeName(node.OptionalVariant)); } }
public override void Visit(TypedNameNode node, Context context) { context._sb.Append(CharacterUtils.EscapeName(node.Identifier)); context._sb.Append(" As "); node.Kind.Accept(this, context); }