mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-28 23:40:01 +00:00
Enums use native enums in C#
Enums should not be (badly) emulated with classes in C# but should use native C# enums instead. Java implementation made an explicit choice not to use the (more complex) Java enums, but C# enums are just light-weight syntactic coating over integral types. Fixes issue #171. Change-Id: I9f4d6ba5324400a1e52982e49b58603cb7d7cca7
This commit is contained in:
committed by
Wouter van Oortmerssen
parent
557c57eb9d
commit
e3b432cba8
@@ -72,7 +72,7 @@ namespace FlatBuffers.Test
|
||||
Monster.AddHp(fbb, (short)80);
|
||||
Monster.AddName(fbb, str);
|
||||
Monster.AddInventory(fbb, inv);
|
||||
Monster.AddTestType(fbb, (byte)1);
|
||||
Monster.AddTestType(fbb, Any.Monster);
|
||||
Monster.AddTest(fbb, mon2);
|
||||
Monster.AddTest4(fbb, test4);
|
||||
Monster.AddTestarrayofstring(fbb, testArrayOfString);
|
||||
@@ -111,7 +111,7 @@ namespace FlatBuffers.Test
|
||||
Assert.AreEqual((short)5, t.A());
|
||||
Assert.AreEqual((sbyte)6, t.B());
|
||||
|
||||
Assert.AreEqual((byte)Any.Monster, monster.TestType());
|
||||
Assert.AreEqual(Any.Monster, monster.TestType());
|
||||
|
||||
var monster2 = new Monster();
|
||||
Assert.IsTrue(monster.Test(monster2) != null);
|
||||
@@ -148,10 +148,10 @@ namespace FlatBuffers.Test
|
||||
|
||||
public void TestEnums()
|
||||
{
|
||||
Assert.AreEqual(Color.Name(Color.Red), "Red");
|
||||
Assert.AreEqual(Color.Name(Color.Blue), "Blue");
|
||||
Assert.AreEqual(Any.Name(Any.NONE), "NONE");
|
||||
Assert.AreEqual(Any.Name(Any.Monster), "Monster");
|
||||
Assert.AreEqual("Red", Color.Red.ToString());
|
||||
Assert.AreEqual("Blue", Color.Blue.ToString());
|
||||
Assert.AreEqual("NONE", Any.NONE.ToString());
|
||||
Assert.AreEqual("Monster", Any.Monster.ToString());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user