From 398ae0cb6b0fe421adb26b52902d21efddd03ae2 Mon Sep 17 00:00:00 2001 From: Wouter van Oortmerssen Date: Mon, 22 May 2017 15:13:20 -0700 Subject: [PATCH] Some code in the samples and docs still used old C# API. Change-Id: I7914c88ad7b31baa7586771423069dc2b90d534f Tested: on Linux. --- docs/source/Tutorial.md | 17 ++++++++--------- samples/SampleBinary.cs | 31 ++++++++++++++----------------- 2 files changed, 22 insertions(+), 26 deletions(-) diff --git a/docs/source/Tutorial.md b/docs/source/Tutorial.md index e42028668..4a4d29661 100644 --- a/docs/source/Tutorial.md +++ b/docs/source/Tutorial.md @@ -1541,10 +1541,10 @@ To access sub-objects, in the case of our `pos`, which is a `Vec3`:
~~~{.cs} - var pos = monster.Pos - var x = pos.X - var y = pos.Y - var z = pos.Z + var pos = monster.Pos.Value; + var x = pos.X; + var y = pos.Y; + var z = pos.Z; ~~~
@@ -1618,7 +1618,7 @@ FlatBuffers `vector`.
~~~{.cs} int invLength = monster.InventoryLength; - var thirdItem = monster.GetInventory(2); + var thirdItem = monster.Inventory(2); ~~~
@@ -1675,8 +1675,8 @@ except your need to handle the result as a FlatBuffer `table`:
~~~{.cs} int weaponsLength = monster.WeaponsLength; - var secondWeaponName = monster.GetWeapons(1).Name; - var secondWeaponDamage = monster.GetWeapons(1).Damage; + var secondWeaponName = monster.Weapons(1).Name; + var secondWeaponDamage = monster.Weapons(1).Damage; ~~~
@@ -1758,8 +1758,7 @@ We can access the type to dynamically cast the data as needed (since the var unionType = monster.EquippedType; if (unionType == Equipment.Weapon) { - var weapon = (Weapon)monster.GetEquipped(new Weapon()); // Requires explicit cast - // to `Weapon`. + var weapon = monster.Equipped().Value; var weaponName = weapon.Name; // "Axe" var weaponDamage = weapon.Damage; // 5 diff --git a/samples/SampleBinary.cs b/samples/SampleBinary.cs index 16128c4f6..d07caf790 100644 --- a/samples/SampleBinary.cs +++ b/samples/SampleBinary.cs @@ -81,22 +81,19 @@ class SampleBinary Assert(monster.Color == Color.Red, "monster.Color", Convert.ToString(monster.Color), Convert.ToString(Color.Red)); - // C# also allows you to use performance-enhanced methods to fill an object that has already - // been created. These functions are prefixed with "Get". For example: `monster.GetPos()`. - var myAlreadyCreatedVector = new Vec3(); - monster.GetPos(myAlreadyCreatedVector); // Instead of `var myNewVec3 = monster.Pos`. - Assert(myAlreadyCreatedVector.X == 1.0f, "myAlreadyCreatedVector.X", - Convert.ToString(myAlreadyCreatedVector.X), Convert.ToString(1.0f)); - Assert(myAlreadyCreatedVector.Y == 2.0f, "myAlreadyCreatedVector.Y", - Convert.ToString(myAlreadyCreatedVector.Y), Convert.ToString(2.0f)); - Assert(myAlreadyCreatedVector.Z == 3.0f, "myAlreadyCreatedVector.Z", - Convert.ToString(myAlreadyCreatedVector.Z), Convert.ToString(3.0f)); + var vec = monster.Pos.Value; + Assert(vec.X == 1.0f, "vec.X", + Convert.ToString(vec.X), Convert.ToString(1.0f)); + Assert(vec.Y == 2.0f, "vec.Y", + Convert.ToString(vec.Y), Convert.ToString(2.0f)); + Assert(vec.Z == 3.0f, "vec.Z", + Convert.ToString(vec.Z), Convert.ToString(3.0f)); // Get and test the `Inventory` FlatBuffer `vector`. for (int i = 0; i < monster.InventoryLength; i++) { - Assert(monster.GetInventory(i) == i, "monster.GetInventory", - Convert.ToString(monster.GetInventory(i)), Convert.ToString(i)); + Assert(monster.Inventory(i) == i, "monster.Inventory", + Convert.ToString(monster.Inventory(i)), Convert.ToString(i)); } // Get and test the `Weapons` FlatBuffer `vector` of `table`s. @@ -104,17 +101,17 @@ class SampleBinary var expectedWeaponDamages = new short[] {3, 5}; for (int i = 0; i < monster.WeaponsLength; i++) { - Assert(monster.GetWeapons(i).Name.Equals(expectedWeaponNames[i], StringComparison.Ordinal), - "monster.GetWeapons", monster.GetWeapons(i).Name, expectedWeaponNames[i]); - Assert(monster.GetWeapons(i).Damage == expectedWeaponDamages[i], "monster.GetWeapons", - Convert.ToString(monster.GetWeapons(i).Damage), + Assert(monster.Weapons(i).Value.Name.Equals(expectedWeaponNames[i], StringComparison.Ordinal), + "monster.Weapons", monster.Weapons(i).Value.Name, expectedWeaponNames[i]); + Assert(monster.Weapons(i).Value.Damage == expectedWeaponDamages[i], "monster.GetWeapons", + Convert.ToString(monster.Weapons(i).Value.Damage), Convert.ToString(expectedWeaponDamages[i])); } // Get and test the `Equipped` FlatBuffer `union`. Assert(monster.EquippedType == Equipment.Weapon, "monster.EquippedType", Convert.ToString(monster.EquippedType), Convert.ToString(Equipment.Weapon)); - var equipped = (Weapon)monster.GetEquipped(new Weapon()); + var equipped = monster.Equipped().Value; Assert(equipped.Name.Equals("Axe", StringComparison.Ordinal), "equipped.Name", equipped.Name, "Axe"); Assert(equipped.Damage == 5, "equipped.Damage", Convert.ToString(equipped.Damage),