1234567891011121314151617181920212223242526272829 |
- // Copyright 2018 The Go Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style
- // license that can be found in the LICENSE file.
- // Package text implements the text format for protocol buffers.
- // This package has no semantic understanding for protocol buffers and is only
- // a parser and composer for the format.
- //
- // There is no formal specification for the protobuf text format, as such the
- // C++ implementation (see google::protobuf::TextFormat) is the reference
- // implementation of the text format.
- //
- // This package is neither a superset nor a subset of the C++ implementation.
- // This implementation permits a more liberal grammar in some cases to be
- // backwards compatible with the historical Go implementation.
- // Future parsings unique to Go should not be added.
- // Some grammars allowed by the C++ implementation are deliberately
- // not implemented here because they are considered a bug by the protobuf team
- // and should not be replicated.
- //
- // The Go implementation should implement a sufficient amount of the C++
- // grammar such that the default text serialization by C++ can be parsed by Go.
- // However, just because the C++ parser accepts some input does not mean that
- // the Go implementation should as well.
- //
- // The text format is almost a superset of JSON except:
- // * message keys are not quoted strings, but identifiers
- // * the top-level value must be a message without the delimiters
- package text
|