コード例 #1
0
        /// <summary>
        /// Initializes an instance of the FlatBuffersSchemaTypeWriter class
        /// </summary>
        /// <param name="typeModelRegistry">TypeRegistry to use as the Type source</param>
        /// <param name="writer">TextWriter write the schema to</param>
        /// /// <param name="options">Options to use when writing the schema</param>
        public FlatBuffersSchemaTypeWriter(TypeModelRegistry typeModelRegistry, TextWriter writer, FlatBuffersSchemaTypeWriterOptions options)
        {
            _typeModelRegistry = typeModelRegistry;
            _writer            = writer;
            _options           = options;

            var newline = options.LineTerminator == FlatBuffersSchemaWriterLineTerminatorType.Lf ? "\n" : "\r\n";

            _writer.NewLine = newline;

            _indent  = new string(_options.IndentType == FlatBuffersSchemaWriterIndentType.Spaces ? ' ' : '\t', _options.IndentCount);
            _bracing = _options.BracingStyle == FlatBuffersSchemaWriterBracingStyle.Egyptian ? " {" : string.Format("{0}{{", newline);
        }
コード例 #2
0
        /// <summary>
        /// Writes this schema to the specified <see cref="TextWriter"/>
        /// </summary>
        /// <param name="writer">TextWriter to emit the schema to</param>
        /// <param name="options">Options to use when writing the schema</param>
        public void WriteTo(TextWriter writer, FlatBuffersSchemaTypeWriterOptions options)
        {
            var schemaWriter = new FlatBuffersSchemaTypeWriter(writer, options);

            var resolved = TraverseTypeGraph();

            WriteUserMetadata(schemaWriter);

            foreach (var node in resolved)
            {
                schemaWriter.Write(node.TypeModel);
            }

            WriteFooter(schemaWriter);
        }
コード例 #3
0
 /// <summary>
 /// Initializes an instance of the FlatBuffersSchemaTypeWriter class
 /// </summary>
 /// <param name="writer">TextWriter write the schema to</param>
 /// <param name="options">Options to use when writing the schema</param>
 public FlatBuffersSchemaTypeWriter(TextWriter writer, FlatBuffersSchemaTypeWriterOptions options)
     : this(TypeModelRegistry.Default, writer, options)
 {
 }