mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-02 04:04:19 +00:00
bulk code format fix (#8707)
This commit is contained in:
@@ -21,9 +21,7 @@ import MyGame.Sample.Equipment;
|
||||
import MyGame.Sample.Monster;
|
||||
import MyGame.Sample.Vec3;
|
||||
import MyGame.Sample.Weapon;
|
||||
|
||||
import com.google.flatbuffers.FlatBufferBuilder;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
class SampleBinary {
|
||||
@@ -53,7 +51,7 @@ class SampleBinary {
|
||||
Monster.addPos(builder, pos);
|
||||
Monster.addName(builder, name);
|
||||
Monster.addColor(builder, Color.Red);
|
||||
Monster.addHp(builder, (short)300);
|
||||
Monster.addHp(builder, (short) 300);
|
||||
Monster.addInventory(builder, inv);
|
||||
Monster.addWeapons(builder, weapons);
|
||||
Monster.addEquippedType(builder, Equipment.Weapon);
|
||||
@@ -74,8 +72,8 @@ class SampleBinary {
|
||||
Monster monster = Monster.getRootAsMonster(buf);
|
||||
|
||||
// Note: We did not set the `mana` field explicitly, so we get back the default value.
|
||||
assert monster.mana() == (short)150;
|
||||
assert monster.hp() == (short)300;
|
||||
assert monster.mana() == (short) 150;
|
||||
assert monster.hp() == (short) 300;
|
||||
assert monster.name().equals("Orc");
|
||||
assert monster.color() == Color.Red;
|
||||
assert monster.pos().x() == 1.0f;
|
||||
@@ -84,7 +82,7 @@ class SampleBinary {
|
||||
|
||||
// Get and test the `inventory` FlatBuffer `vector`.
|
||||
for (int i = 0; i < monster.inventoryLength(); i++) {
|
||||
assert monster.inventory(i) == (byte)i;
|
||||
assert monster.inventory(i) == (byte) i;
|
||||
}
|
||||
|
||||
// Get and test the `weapons` FlatBuffer `vector` of `table`s.
|
||||
@@ -103,7 +101,7 @@ class SampleBinary {
|
||||
|
||||
// Get and test the `equipped` FlatBuffer `union`.
|
||||
assert monster.equippedType() == Equipment.Weapon;
|
||||
Weapon equipped = (Weapon)monster.equipped(new Weapon());
|
||||
Weapon equipped = (Weapon) monster.equipped(new Weapon());
|
||||
assert equipped.name().equals("Axe");
|
||||
assert equipped.damage() == 5;
|
||||
|
||||
|
||||
@@ -21,7 +21,6 @@ import MyGame.Sample.Equipment
|
||||
import MyGame.Sample.Monster
|
||||
import MyGame.Sample.Vec3
|
||||
import MyGame.Sample.Weapon
|
||||
|
||||
import com.google.flatbuffers.FlatBufferBuilder
|
||||
|
||||
@kotlin.ExperimentalUnsignedTypes
|
||||
@@ -31,79 +30,79 @@ class SampleBinary {
|
||||
// Example how to use FlatBuffers to create and read binary buffers.
|
||||
@JvmStatic
|
||||
fun main(args: Array<String>) {
|
||||
val builder = FlatBufferBuilder(0)
|
||||
val builder = FlatBufferBuilder(0)
|
||||
|
||||
// Create some weapons for our Monster ('Sword' and 'Axe').
|
||||
val weaponOneName = builder.createString("Sword")
|
||||
val weaponOneDamage: Short = 3
|
||||
val weaponTwoName = builder.createString("Axe")
|
||||
val weaponTwoDamage: Short = 5
|
||||
// Create some weapons for our Monster ('Sword' and 'Axe').
|
||||
val weaponOneName = builder.createString("Sword")
|
||||
val weaponOneDamage: Short = 3
|
||||
val weaponTwoName = builder.createString("Axe")
|
||||
val weaponTwoDamage: Short = 5
|
||||
|
||||
// Use the `createWeapon()` helper function to create the weapons, since we set every field.
|
||||
val weaps = IntArray(2)
|
||||
weaps[0] = Weapon.createWeapon(builder, weaponOneName, weaponOneDamage)
|
||||
weaps[1] = Weapon.createWeapon(builder, weaponTwoName, weaponTwoDamage)
|
||||
// Use the `createWeapon()` helper function to create the weapons, since we set every field.
|
||||
val weaps = IntArray(2)
|
||||
weaps[0] = Weapon.createWeapon(builder, weaponOneName, weaponOneDamage)
|
||||
weaps[1] = Weapon.createWeapon(builder, weaponTwoName, weaponTwoDamage)
|
||||
|
||||
// Serialize the FlatBuffer data.
|
||||
val name = builder.createString("Orc")
|
||||
val treasure = byteArrayOf(0, 1, 2, 3, 4, 5, 6, 7, 8, 9).asUByteArray()
|
||||
val inv = Monster.createInventoryVector(builder, treasure)
|
||||
val weapons = Monster.createWeaponsVector(builder, weaps)
|
||||
val pos = Vec3.createVec3(builder, 1.0f, 2.0f, 3.0f)
|
||||
// Serialize the FlatBuffer data.
|
||||
val name = builder.createString("Orc")
|
||||
val treasure = byteArrayOf(0, 1, 2, 3, 4, 5, 6, 7, 8, 9).asUByteArray()
|
||||
val inv = Monster.createInventoryVector(builder, treasure)
|
||||
val weapons = Monster.createWeaponsVector(builder, weaps)
|
||||
val pos = Vec3.createVec3(builder, 1.0f, 2.0f, 3.0f)
|
||||
|
||||
Monster.startMonster(builder)
|
||||
Monster.addPos(builder, pos)
|
||||
Monster.addName(builder, name)
|
||||
Monster.addColor(builder, Color.Red)
|
||||
Monster.addHp(builder, 300.toShort())
|
||||
Monster.addInventory(builder, inv)
|
||||
Monster.addWeapons(builder, weapons)
|
||||
Monster.addEquippedType(builder, Equipment.Weapon)
|
||||
Monster.addEquipped(builder, weaps[1])
|
||||
val orc = Monster.endMonster(builder)
|
||||
Monster.startMonster(builder)
|
||||
Monster.addPos(builder, pos)
|
||||
Monster.addName(builder, name)
|
||||
Monster.addColor(builder, Color.Red)
|
||||
Monster.addHp(builder, 300.toShort())
|
||||
Monster.addInventory(builder, inv)
|
||||
Monster.addWeapons(builder, weapons)
|
||||
Monster.addEquippedType(builder, Equipment.Weapon)
|
||||
Monster.addEquipped(builder, weaps[1])
|
||||
val orc = Monster.endMonster(builder)
|
||||
|
||||
builder.finish(orc) // You could also call `Monster.finishMonsterBuffer(builder, orc);`.
|
||||
builder.finish(orc) // You could also call `Monster.finishMonsterBuffer(builder, orc);`.
|
||||
|
||||
// We now have a FlatBuffer that can be stored on disk or sent over a network.
|
||||
// We now have a FlatBuffer that can be stored on disk or sent over a network.
|
||||
|
||||
// ...Code to store to disk or send over a network goes here...
|
||||
// ...Code to store to disk or send over a network goes here...
|
||||
|
||||
// Instead, we are going to access it right away, as if we just received it.
|
||||
// Instead, we are going to access it right away, as if we just received it.
|
||||
|
||||
val buf = builder.dataBuffer()
|
||||
val buf = builder.dataBuffer()
|
||||
|
||||
// Get access to the root:
|
||||
val monster = Monster.getRootAsMonster(buf)
|
||||
// Get access to the root:
|
||||
val monster = Monster.getRootAsMonster(buf)
|
||||
|
||||
// Note: We did not set the `mana` field explicitly, so we get back the default value.
|
||||
assert(monster.mana == 150.toShort())
|
||||
assert(monster.hp == 300.toShort())
|
||||
assert(monster.name.equals("Orc"))
|
||||
assert(monster.color == Color.Red)
|
||||
assert(monster.pos!!.x == 1.0f)
|
||||
assert(monster.pos!!.y == 2.0f)
|
||||
assert(monster.pos!!.z == 3.0f)
|
||||
// Note: We did not set the `mana` field explicitly, so we get back the default value.
|
||||
assert(monster.mana == 150.toShort())
|
||||
assert(monster.hp == 300.toShort())
|
||||
assert(monster.name.equals("Orc"))
|
||||
assert(monster.color == Color.Red)
|
||||
assert(monster.pos!!.x == 1.0f)
|
||||
assert(monster.pos!!.y == 2.0f)
|
||||
assert(monster.pos!!.z == 3.0f)
|
||||
|
||||
// Get and test the `inventory` FlatBuffer `vector`.
|
||||
for (i in 0 until monster.inventoryLength) {
|
||||
assert(monster.inventory(i) == i.toUByte())
|
||||
}
|
||||
// Get and test the `inventory` FlatBuffer `vector`.
|
||||
for (i in 0 until monster.inventoryLength) {
|
||||
assert(monster.inventory(i) == i.toUByte())
|
||||
}
|
||||
|
||||
// Get and test the `weapons` FlatBuffer `vector` of `table`s.
|
||||
val expectedWeaponNames = arrayOf("Sword", "Axe")
|
||||
val expectedWeaponDamages = intArrayOf(3, 5)
|
||||
for (i in 0 until monster.weaponsLength) {
|
||||
assert(monster.weapons(i)!!.name.equals(expectedWeaponNames[i]))
|
||||
assert(monster.weapons(i)!!.damage.toInt() == expectedWeaponDamages[i])
|
||||
}
|
||||
// Get and test the `weapons` FlatBuffer `vector` of `table`s.
|
||||
val expectedWeaponNames = arrayOf("Sword", "Axe")
|
||||
val expectedWeaponDamages = intArrayOf(3, 5)
|
||||
for (i in 0 until monster.weaponsLength) {
|
||||
assert(monster.weapons(i)!!.name.equals(expectedWeaponNames[i]))
|
||||
assert(monster.weapons(i)!!.damage.toInt() == expectedWeaponDamages[i])
|
||||
}
|
||||
|
||||
// Get and test the `equipped` FlatBuffer `union`.
|
||||
assert(monster.equippedType == Equipment.Weapon)
|
||||
val equipped = monster.equipped(Weapon()) as Weapon?
|
||||
assert(equipped!!.name.equals("Axe"))
|
||||
assert(equipped.damage == 5.toShort())
|
||||
// Get and test the `equipped` FlatBuffer `union`.
|
||||
assert(monster.equippedType == Equipment.Weapon)
|
||||
val equipped = monster.equipped(Weapon()) as Weapon?
|
||||
assert(equipped!!.name.equals("Axe"))
|
||||
assert(equipped.damage == 5.toShort())
|
||||
|
||||
println("The FlatBuffer was successfully created and verified!")
|
||||
println("The FlatBuffer was successfully created and verified!")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,9 +19,9 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
sample "github.com/google/flatbuffers/samples/MyGame/Sample"
|
||||
"fmt"
|
||||
flatbuffers "github.com/google/flatbuffers/go"
|
||||
sample "github.com/google/flatbuffers/samples/MyGame/Sample"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
# folder (where it gets placed when using `cmake`).
|
||||
import os
|
||||
import sys
|
||||
|
||||
sys.path.append(os.path.join(os.path.dirname(__file__), '../python'))
|
||||
|
||||
import flatbuffers
|
||||
@@ -31,6 +32,7 @@ import MyGame.Sample.Weapon
|
||||
|
||||
# Example of how to use FlatBuffers to create and read binary buffers.
|
||||
|
||||
|
||||
def main():
|
||||
builder = flatbuffers.Builder(0)
|
||||
|
||||
@@ -70,11 +72,13 @@ def main():
|
||||
MyGame.Sample.Monster.MonsterAddHp(builder, 300)
|
||||
MyGame.Sample.Monster.MonsterAddName(builder, name)
|
||||
MyGame.Sample.Monster.MonsterAddInventory(builder, inv)
|
||||
MyGame.Sample.Monster.MonsterAddColor(builder,
|
||||
MyGame.Sample.Color.Color().Red)
|
||||
MyGame.Sample.Monster.MonsterAddColor(
|
||||
builder, MyGame.Sample.Color.Color().Red
|
||||
)
|
||||
MyGame.Sample.Monster.MonsterAddWeapons(builder, weapons)
|
||||
MyGame.Sample.Monster.MonsterAddEquippedType(
|
||||
builder, MyGame.Sample.Equipment.Equipment().Weapon)
|
||||
builder, MyGame.Sample.Equipment.Equipment().Weapon
|
||||
)
|
||||
MyGame.Sample.Monster.MonsterAddEquipped(builder, axe)
|
||||
orc = MyGame.Sample.Monster.MonsterEnd(builder)
|
||||
|
||||
@@ -128,10 +132,11 @@ def main():
|
||||
union_weapon = MyGame.Sample.Weapon.Weapon()
|
||||
union_weapon.Init(monster.Equipped().Bytes, monster.Equipped().Pos)
|
||||
|
||||
assert union_weapon.Name() == b"Axe"
|
||||
assert union_weapon.Name() == b'Axe'
|
||||
assert union_weapon.Damage() == 5
|
||||
|
||||
print('The FlatBuffer was successfully created and verified!')
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
@@ -21,135 +21,131 @@ extern crate flatbuffers;
|
||||
#[allow(dead_code, unused_imports)]
|
||||
#[allow(clippy::all)]
|
||||
mod rust_generated;
|
||||
pub use rust_generated::my_game::sample::{Color, Equipment,
|
||||
Monster, MonsterArgs,
|
||||
Vec3,
|
||||
Weapon, WeaponArgs};
|
||||
|
||||
pub use rust_generated::my_game::sample::{
|
||||
Color, Equipment, Monster, MonsterArgs, Vec3, Weapon, WeaponArgs,
|
||||
};
|
||||
|
||||
// Example how to use FlatBuffers to create and read binary buffers.
|
||||
#[allow(clippy::float_cmp)]
|
||||
fn main() {
|
||||
// Build up a serialized buffer algorithmically.
|
||||
// Initialize it with a capacity of 1024 bytes.
|
||||
let mut builder = flatbuffers::FlatBufferBuilder::with_capacity(1024);
|
||||
// Build up a serialized buffer algorithmically.
|
||||
// Initialize it with a capacity of 1024 bytes.
|
||||
let mut builder = flatbuffers::FlatBufferBuilder::with_capacity(1024);
|
||||
|
||||
// Serialize some weapons for the Monster: A 'sword' and an 'axe'.
|
||||
let weapon_one_name = builder.create_string("Sword");
|
||||
let weapon_two_name = builder.create_string("Axe");
|
||||
// Serialize some weapons for the Monster: A 'sword' and an 'axe'.
|
||||
let weapon_one_name = builder.create_string("Sword");
|
||||
let weapon_two_name = builder.create_string("Axe");
|
||||
|
||||
// Use the `Weapon::create` shortcut to create Weapons with named field
|
||||
// arguments.
|
||||
let sword = Weapon::create(&mut builder, &WeaponArgs{
|
||||
name: Some(weapon_one_name),
|
||||
damage: 3,
|
||||
});
|
||||
let axe = Weapon::create(&mut builder, &WeaponArgs{
|
||||
name: Some(weapon_two_name),
|
||||
damage: 5,
|
||||
});
|
||||
// Use the `Weapon::create` shortcut to create Weapons with named field
|
||||
// arguments.
|
||||
let sword =
|
||||
Weapon::create(&mut builder, &WeaponArgs { name: Some(weapon_one_name), damage: 3 });
|
||||
let axe = Weapon::create(&mut builder, &WeaponArgs { name: Some(weapon_two_name), damage: 5 });
|
||||
|
||||
// Name of the Monster.
|
||||
let name = builder.create_string("Orc");
|
||||
// Name of the Monster.
|
||||
let name = builder.create_string("Orc");
|
||||
|
||||
// Inventory.
|
||||
let inventory = builder.create_vector(&[0u8, 1, 2, 3, 4, 5, 6, 7, 8, 9]);
|
||||
// Inventory.
|
||||
let inventory = builder.create_vector(&[0u8, 1, 2, 3, 4, 5, 6, 7, 8, 9]);
|
||||
|
||||
// Create a FlatBuffer `vector` that contains offsets to the sword and axe
|
||||
// we created above.
|
||||
let weapons = builder.create_vector(&[sword, axe]);
|
||||
// Create a FlatBuffer `vector` that contains offsets to the sword and axe
|
||||
// we created above.
|
||||
let weapons = builder.create_vector(&[sword, axe]);
|
||||
|
||||
// Create the path vector of Vec3 objects:
|
||||
//let x = Vec3::new(1.0, 2.0, 3.0);
|
||||
//let y = Vec3::new(4.0, 5.0, 6.0);
|
||||
//let path = builder.create_vector(&[x, y]);
|
||||
// Create the path vector of Vec3 objects:
|
||||
//let x = Vec3::new(1.0, 2.0, 3.0);
|
||||
//let y = Vec3::new(4.0, 5.0, 6.0);
|
||||
//let path = builder.create_vector(&[x, y]);
|
||||
|
||||
// Note that, for convenience, it is also valid to create a vector of
|
||||
// references to structs, like this:
|
||||
// let path = builder.create_vector(&[&x, &y]);
|
||||
// Note that, for convenience, it is also valid to create a vector of
|
||||
// references to structs, like this:
|
||||
// let path = builder.create_vector(&[&x, &y]);
|
||||
|
||||
// Create the monster using the `Monster::create` helper function. This
|
||||
// function accepts a `MonsterArgs` struct, which supplies all of the data
|
||||
// needed to build a `Monster`. To supply empty/default fields, just use the
|
||||
// Rust built-in `Default::default()` function, as demonstrated below.
|
||||
let orc = Monster::create(&mut builder, &MonsterArgs{
|
||||
pos: Some(&Vec3::new(1.0f32, 2.0f32, 3.0f32)),
|
||||
mana: 150,
|
||||
hp: 80,
|
||||
name: Some(name),
|
||||
inventory: Some(inventory),
|
||||
color: Color::Red,
|
||||
weapons: Some(weapons),
|
||||
equipped_type: Equipment::Weapon,
|
||||
equipped: Some(axe.as_union_value()),
|
||||
//path: Some(path),
|
||||
..Default::default()
|
||||
});
|
||||
// Create the monster using the `Monster::create` helper function. This
|
||||
// function accepts a `MonsterArgs` struct, which supplies all of the data
|
||||
// needed to build a `Monster`. To supply empty/default fields, just use the
|
||||
// Rust built-in `Default::default()` function, as demonstrated below.
|
||||
let orc = Monster::create(
|
||||
&mut builder,
|
||||
&MonsterArgs {
|
||||
pos: Some(&Vec3::new(1.0f32, 2.0f32, 3.0f32)),
|
||||
mana: 150,
|
||||
hp: 80,
|
||||
name: Some(name),
|
||||
inventory: Some(inventory),
|
||||
color: Color::Red,
|
||||
weapons: Some(weapons),
|
||||
equipped_type: Equipment::Weapon,
|
||||
equipped: Some(axe.as_union_value()),
|
||||
//path: Some(path),
|
||||
..Default::default()
|
||||
},
|
||||
);
|
||||
|
||||
// Serialize the root of the object, without providing a file identifier.
|
||||
builder.finish(orc, None);
|
||||
// Serialize the root of the object, without providing a file identifier.
|
||||
builder.finish(orc, None);
|
||||
|
||||
// We now have a FlatBuffer we can store on disk or send over a network.
|
||||
// We now have a FlatBuffer we can store on disk or send over a network.
|
||||
|
||||
// ** file/network code goes here :) **
|
||||
// ** file/network code goes here :) **
|
||||
|
||||
// Instead, we're going to access it right away (as if we just received it).
|
||||
// This must be called after `finish()`.
|
||||
let buf = builder.finished_data(); // Of type `&[u8]`
|
||||
// Instead, we're going to access it right away (as if we just received it).
|
||||
// This must be called after `finish()`.
|
||||
let buf = builder.finished_data(); // Of type `&[u8]`
|
||||
|
||||
// Get access to the root:
|
||||
let monster = flatbuffers::root::<Monster>(buf).unwrap();
|
||||
// Get access to the root:
|
||||
let monster = flatbuffers::root::<Monster>(buf).unwrap();
|
||||
|
||||
// Get and test some scalar types from the FlatBuffer.
|
||||
let hp = monster.hp();
|
||||
let mana = monster.mana();
|
||||
let name = monster.name();
|
||||
// Get and test some scalar types from the FlatBuffer.
|
||||
let hp = monster.hp();
|
||||
let mana = monster.mana();
|
||||
let name = monster.name();
|
||||
|
||||
assert_eq!(hp, 80);
|
||||
assert_eq!(mana, 150); // default
|
||||
assert_eq!(name, Some("Orc"));
|
||||
assert_eq!(hp, 80);
|
||||
assert_eq!(mana, 150); // default
|
||||
assert_eq!(name, Some("Orc"));
|
||||
|
||||
// Get and test a field of the FlatBuffer's `struct`.
|
||||
assert!(monster.pos().is_some());
|
||||
let pos = monster.pos().unwrap();
|
||||
let x = pos.x();
|
||||
let y = pos.y();
|
||||
let z = pos.z();
|
||||
assert_eq!(x, 1.0f32);
|
||||
assert_eq!(y, 2.0f32);
|
||||
assert_eq!(z, 3.0f32);
|
||||
// Get and test a field of the FlatBuffer's `struct`.
|
||||
assert!(monster.pos().is_some());
|
||||
let pos = monster.pos().unwrap();
|
||||
let x = pos.x();
|
||||
let y = pos.y();
|
||||
let z = pos.z();
|
||||
assert_eq!(x, 1.0f32);
|
||||
assert_eq!(y, 2.0f32);
|
||||
assert_eq!(z, 3.0f32);
|
||||
|
||||
// Get an element from the `inventory` FlatBuffer's `vector`.
|
||||
assert!(monster.inventory().is_some());
|
||||
let inv = monster.inventory().unwrap();
|
||||
let third_item = inv.get(2);
|
||||
assert_eq!(third_item, 2);
|
||||
// Get an element from the `inventory` FlatBuffer's `vector`.
|
||||
assert!(monster.inventory().is_some());
|
||||
let inv = monster.inventory().unwrap();
|
||||
let third_item = inv.get(2);
|
||||
assert_eq!(third_item, 2);
|
||||
|
||||
// Get and test the `weapons` FlatBuffers's `vector`.
|
||||
assert!(monster.weapons().is_some());
|
||||
let weps = monster.weapons().unwrap();
|
||||
//let weps_len = weps.len();
|
||||
let wep2 = weps.get(1);
|
||||
let second_weapon_name = wep2.name();
|
||||
let second_weapon_damage = wep2.damage();
|
||||
assert_eq!(second_weapon_name, Some("Axe"));
|
||||
assert_eq!(second_weapon_damage, 5);
|
||||
// Get and test the `weapons` FlatBuffers's `vector`.
|
||||
assert!(monster.weapons().is_some());
|
||||
let weps = monster.weapons().unwrap();
|
||||
//let weps_len = weps.len();
|
||||
let wep2 = weps.get(1);
|
||||
let second_weapon_name = wep2.name();
|
||||
let second_weapon_damage = wep2.damage();
|
||||
assert_eq!(second_weapon_name, Some("Axe"));
|
||||
assert_eq!(second_weapon_damage, 5);
|
||||
|
||||
// Get and test the `Equipment` union (`equipped` field).
|
||||
assert_eq!(monster.equipped_type(), Equipment::Weapon);
|
||||
let equipped = monster.equipped_as_weapon().unwrap();
|
||||
let weapon_name = equipped.name();
|
||||
let weapon_damage = equipped.damage();
|
||||
assert_eq!(weapon_name, Some("Axe"));
|
||||
assert_eq!(weapon_damage, 5);
|
||||
// Get and test the `Equipment` union (`equipped` field).
|
||||
assert_eq!(monster.equipped_type(), Equipment::Weapon);
|
||||
let equipped = monster.equipped_as_weapon().unwrap();
|
||||
let weapon_name = equipped.name();
|
||||
let weapon_damage = equipped.damage();
|
||||
assert_eq!(weapon_name, Some("Axe"));
|
||||
assert_eq!(weapon_damage, 5);
|
||||
|
||||
// Get and test the `path` FlatBuffers's `vector`.
|
||||
//assert_eq!(monster.path().unwrap().len(), 2);
|
||||
//assert_eq!(monster.path().unwrap()[0].x(), 1.0);
|
||||
//assert_eq!(monster.path().unwrap()[1].x(), 4.0);
|
||||
// Get and test the `path` FlatBuffers's `vector`.
|
||||
//assert_eq!(monster.path().unwrap().len(), 2);
|
||||
//assert_eq!(monster.path().unwrap()[0].x(), 1.0);
|
||||
//assert_eq!(monster.path().unwrap()[1].x(), 4.0);
|
||||
|
||||
println!("The FlatBuffer was successfully created and accessed!");
|
||||
dbg!(monster);
|
||||
println!("The FlatBuffer was successfully created and accessed!");
|
||||
dbg!(monster);
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
|
||||
@@ -135,10 +135,7 @@ fn main() {
|
||||
|
||||
// Analogously, the `index` method is the safe version of `idx`.
|
||||
assert!(read_monster.index("hp").is_ok());
|
||||
assert_eq!(
|
||||
read_monster.index("foo").unwrap_err(),
|
||||
ReaderError::KeyNotFound
|
||||
);
|
||||
assert_eq!(read_monster.index("foo").unwrap_err(), ReaderError::KeyNotFound);
|
||||
|
||||
// Maps can also be indexed by usize. They're stored by key so `coins` are the first element.
|
||||
let monster_coins = read_monster.idx(0);
|
||||
|
||||
@@ -49,14 +49,8 @@ fn main() {
|
||||
velocity: [1.0, 0.0, 0.0],
|
||||
weapons: vec![
|
||||
Weapon::Fist,
|
||||
Weapon::Equipment {
|
||||
name: "great axe".to_string(),
|
||||
damage: 15,
|
||||
},
|
||||
Weapon::Equipment {
|
||||
name: "hammer".to_string(),
|
||||
damage: 5,
|
||||
},
|
||||
Weapon::Equipment { name: "great axe".to_string(), damage: 15 },
|
||||
Weapon::Equipment { name: "hammer".to_string(), damage: 5 },
|
||||
],
|
||||
coins: vec![5, 10, 25, 25, 25, 100],
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user