capnproto

FORK: Cap'n Proto serialization/RPC system - core tools and C++ library
git clone https://git.neptards.moe/neptards/capnproto.git
Log | Files | Refs | README | LICENSE

carsales.proto (2359B)


      1 // Copyright (c) 2013-2014 Sandstorm Development Group, Inc. and contributors
      2 // Licensed under the MIT License:
      3 //
      4 // Permission is hereby granted, free of charge, to any person obtaining a copy
      5 // of this software and associated documentation files (the "Software"), to deal
      6 // in the Software without restriction, including without limitation the rights
      7 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      8 // copies of the Software, and to permit persons to whom the Software is
      9 // furnished to do so, subject to the following conditions:
     10 //
     11 // The above copyright notice and this permission notice shall be included in
     12 // all copies or substantial portions of the Software.
     13 //
     14 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     15 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     16 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     17 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     18 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     19 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     20 // THE SOFTWARE.
     21 
     22 package capnp.benchmark.protobuf;
     23 
     24 message ParkingLot {
     25   repeated Car car = 1;
     26 }
     27 
     28 message TotalValue {
     29   required uint64 amount = 1;
     30 }
     31 
     32 message Car {
     33   optional string make = 1;
     34   optional string model = 2;
     35   optional Color color = 3;
     36   optional uint32 seats = 4;
     37   optional uint32 doors = 5;
     38   repeated Wheel wheel = 6;
     39   optional uint32 length = 7;
     40   optional uint32 width = 8;
     41   optional uint32 height = 9;
     42   optional uint32 weight = 10;
     43   optional Engine engine = 11;
     44   optional float fuel_capacity = 12;
     45   optional float fuel_level = 13;
     46   optional bool has_power_windows = 14;
     47   optional bool has_power_steering = 15;
     48   optional bool has_cruise_control = 16;
     49   optional uint32 cup_holders = 17;
     50   optional bool has_nav_system = 18;
     51 }
     52 
     53 enum Color {
     54   BLACK = 0;
     55   WHITE = 1;
     56   RED = 2;
     57   GREEN = 3;
     58   BLUE = 4;
     59   CYAN = 5;
     60   MAGENTA = 6;
     61   YELLOW = 7;
     62   SILVER = 8;
     63 }
     64 
     65 message Wheel {
     66   optional uint32 diameter = 1;
     67   optional float air_pressure = 2;
     68   optional bool snow_tires = 3;
     69 }
     70 
     71 message Engine {
     72   optional uint32 horsepower = 1;
     73   optional uint32 cylinders = 2;
     74   optional uint32 cc = 3;
     75   optional bool uses_gas = 4;
     76   optional bool uses_electric = 5;
     77 }