Home | History | Annotate | Download | only in wrappers
      1 // Protocol Buffers - Google's data interchange format
      2 // Copyright 2008 Google Inc.  All rights reserved.
      3 // https://developers.google.com/protocol-buffers/
      4 //
      5 // Redistribution and use in source and binary forms, with or without
      6 // modification, are permitted provided that the following conditions are
      7 // met:
      8 //
      9 //     * Redistributions of source code must retain the above copyright
     10 // notice, this list of conditions and the following disclaimer.
     11 //     * Redistributions in binary form must reproduce the above
     12 // copyright notice, this list of conditions and the following disclaimer
     13 // in the documentation and/or other materials provided with the
     14 // distribution.
     15 //     * Neither the name of Google Inc. nor the names of its
     16 // contributors may be used to endorse or promote products derived from
     17 // this software without specific prior written permission.
     18 //
     19 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
     20 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
     21 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
     22 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
     23 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
     24 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
     25 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     26 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     27 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     28 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
     29 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     30 
     31 // Wrappers for primitive (non-message) types. These types are useful
     32 // for embedding primitives in the `google.protobuf.Any` type and for places
     33 // where we need to distinguish between the absence of a primitive
     34 // typed field and its default value.
     35 
     36 syntax = "proto3";
     37 
     38 package google.protobuf;
     39 
     40 option csharp_namespace = "Google.Protobuf.WellKnownTypes";
     41 option cc_enable_arenas = true;
     42 option go_package = "github.com/golang/protobuf/ptypes/wrappers";
     43 option java_package = "com.google.protobuf";
     44 option java_outer_classname = "WrappersProto";
     45 option java_multiple_files = true;
     46 option objc_class_prefix = "GPB";
     47 
     48 // Wrapper message for `double`.
     49 //
     50 // The JSON representation for `DoubleValue` is JSON number.
     51 message DoubleValue {
     52   // The double value.
     53   double value = 1;
     54 }
     55 
     56 // Wrapper message for `float`.
     57 //
     58 // The JSON representation for `FloatValue` is JSON number.
     59 message FloatValue {
     60   // The float value.
     61   float value = 1;
     62 }
     63 
     64 // Wrapper message for `int64`.
     65 //
     66 // The JSON representation for `Int64Value` is JSON string.
     67 message Int64Value {
     68   // The int64 value.
     69   int64 value = 1;
     70 }
     71 
     72 // Wrapper message for `uint64`.
     73 //
     74 // The JSON representation for `UInt64Value` is JSON string.
     75 message UInt64Value {
     76   // The uint64 value.
     77   uint64 value = 1;
     78 }
     79 
     80 // Wrapper message for `int32`.
     81 //
     82 // The JSON representation for `Int32Value` is JSON number.
     83 message Int32Value {
     84   // The int32 value.
     85   int32 value = 1;
     86 }
     87 
     88 // Wrapper message for `uint32`.
     89 //
     90 // The JSON representation for `UInt32Value` is JSON number.
     91 message UInt32Value {
     92   // The uint32 value.
     93   uint32 value = 1;
     94 }
     95 
     96 // Wrapper message for `bool`.
     97 //
     98 // The JSON representation for `BoolValue` is JSON `true` and `false`.
     99 message BoolValue {
    100   // The bool value.
    101   bool value = 1;
    102 }
    103 
    104 // Wrapper message for `string`.
    105 //
    106 // The JSON representation for `StringValue` is JSON string.
    107 message StringValue {
    108   // The string value.
    109   string value = 1;
    110 }
    111 
    112 // Wrapper message for `bytes`.
    113 //
    114 // The JSON representation for `BytesValue` is JSON string.
    115 message BytesValue {
    116   // The bytes value.
    117   bytes value = 1;
    118 }
    119