1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- using Go = import "/go.capnp";
- @0xcd7129bab3129d29;
- $Go.package("protocol");
- $Go.import("protocol");
- struct Film {
- id @0 :UInt64;
- title @1 :Text;
- genres @2 :List(Text);
- releaseDate @3 :Date;
- struct Date {
- year @0 :Int16;
- month @1 :UInt8;
- day @2 :UInt8;
- }
- originalTitle @4 :Text;
- overview @5 :Text;
- tagline @6 :Text;
- runtime @7 :UInt16;
- isAdult @8 :Bool;
- mark @9 :Float32;
- voteCount @10 :UInt64;
- status @11 :Status;
- enum Status {
- rumored @0 $Go.tag("Rumored");
- planned @1 $Go.tag("Planned");
- inProduction @2 $Go.tag("In Production");
- postProduction @3 $Go.tag("Post Production");
- released @4 $Go.tag("Released");
- cancelled @5 $Go.tag("Cancelled");
- }
- posterPath @12 :Text;
- backdropPath @13 :Text;
-
- collection @14 :Collection;
- struct Collection {
- name @0 :Text;
- parts @1 :List(CollectionPart);
- struct CollectionPart {
- id @0 :UInt64;
- title @1 :Text;
- releaseDate @2 :Date;
- posterPath @3 :Text;
- }
- }
- cast @15 :List(Character);
- struct Character {
- person @0 :Person;
- name @1 :Text;
- }
- crew @16: List(CrewMember);
- struct CrewMember {
- person @0 :Person;
- job @1 :Text;
- }
- }
- struct Person {
- id @0 :UInt64;
- name @1 :Text;
- photoPath @2 :Text;
- }
|