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 22package capnp.benchmark.protobuf; 23 24message ParkingLot { 25 repeated Car car = 1; 26} 27 28message TotalValue { 29 required uint64 amount = 1; 30} 31 32message 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 53enum 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 65message Wheel { 66 optional uint32 diameter = 1; 67 optional float air_pressure = 2; 68 optional bool snow_tires = 3; 69} 70 71message 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} 78