// Demonstrates the ability to have vectors of unions, and also to
// store structs and strings in unions.

table Attacker {
  sword_attack_damage: int;
}

struct Rapunzel {
  hair_length: int;
}

struct BookReader {
  books_read: int;
}

union Character {
  MuLan: Attacker,  // Can have name be different from type.
  Rapunzel,         // Or just both the same, as before.
  Belle: BookReader,
  BookFan: BookReader,
  Other: string,
  Unused: string
}

struct FallingTub {
  weight: int;
}

table HandFan {
  length: int;
}

union Gadget {
  FallingTub,
  HandFan,
}

table Movie {
  main_character: Character;
  characters: [Character];
}

root_type Movie;
file_identifier "MOVI";
