Use correct default type for str (#8623)

* [Python] Use correct type for str with None

Otherwise mypy will correctly flag code like this

def __init__(self):
  self.fooBar = None  # type: Optional[str]

error: Incompatible types in assignment (expression has type "None", variable has type "str")

* [Python] Make list type optional as they can contain None
This commit is contained in:
Felix
2025-07-05 01:47:36 +02:00
committed by GitHub
parent 6b251aa1cf
commit c15fe421ba
9 changed files with 61 additions and 61 deletions

View File

@@ -116,11 +116,11 @@ class ArrayStructT(object):
# ArrayStructT
def __init__(self):
self.a = 0.0 # type: float
self.b = None # type: List[int]
self.b = None # type: Optional[List[int]]
self.c = 0 # type: int
self.d = None # type: List[MyGame.Example.NestedStruct.NestedStructT]
self.d = None # type: Optional[List[MyGame.Example.NestedStruct.NestedStructT]]
self.e = 0 # type: int
self.f = None # type: List[int]
self.f = None # type: Optional[List[int]]
@classmethod
def InitFromBuf(cls, buf, pos):

View File

@@ -1407,16 +1407,16 @@ class MonsterT(object):
self.pos = None # type: Optional[MyGame.Example.Vec3.Vec3T]
self.mana = 150 # type: int
self.hp = 100 # type: int
self.name = None # type: str
self.inventory = None # type: List[int]
self.name = None # type: Optional[str]
self.inventory = None # type: Optional[List[int]]
self.color = 8 # type: int
self.testType = 0 # type: int
self.test = None # type: Union[None, MyGame.Example.Monster.MonsterT, MyGame.Example.TestSimpleTableWithEnum.TestSimpleTableWithEnumT, MyGame.Example2.Monster.MonsterT]
self.test4 = None # type: List[MyGame.Example.Test.TestT]
self.testarrayofstring = None # type: List[str]
self.testarrayoftables = None # type: List[MyGame.Example.Monster.MonsterT]
self.test4 = None # type: Optional[List[MyGame.Example.Test.TestT]]
self.testarrayofstring = None # type: Optional[List[Optional[str]]]
self.testarrayoftables = None # type: Optional[List[MyGame.Example.Monster.MonsterT]]
self.enemy = None # type: Optional[MyGame.Example.Monster.MonsterT]
self.testnestedflatbuffer = None # type: List[int]
self.testnestedflatbuffer = None # type: Optional[List[int]]
self.testempty = None # type: Optional[MyGame.Example.Stat.StatT]
self.testbool = False # type: bool
self.testhashs32Fnv1 = 0 # type: int
@@ -1427,33 +1427,33 @@ class MonsterT(object):
self.testhashu32Fnv1a = 0 # type: int
self.testhashs64Fnv1a = 0 # type: int
self.testhashu64Fnv1a = 0 # type: int
self.testarrayofbools = None # type: List[bool]
self.testarrayofbools = None # type: Optional[List[bool]]
self.testf = 3.14159 # type: float
self.testf2 = 3.0 # type: float
self.testf3 = 0.0 # type: float
self.testarrayofstring2 = None # type: List[str]
self.testarrayofsortedstruct = None # type: List[MyGame.Example.Ability.AbilityT]
self.flex = None # type: List[int]
self.test5 = None # type: List[MyGame.Example.Test.TestT]
self.vectorOfLongs = None # type: List[int]
self.vectorOfDoubles = None # type: List[float]
self.testarrayofstring2 = None # type: Optional[List[Optional[str]]]
self.testarrayofsortedstruct = None # type: Optional[List[MyGame.Example.Ability.AbilityT]]
self.flex = None # type: Optional[List[int]]
self.test5 = None # type: Optional[List[MyGame.Example.Test.TestT]]
self.vectorOfLongs = None # type: Optional[List[int]]
self.vectorOfDoubles = None # type: Optional[List[float]]
self.parentNamespaceTest = None # type: Optional[MyGame.InParentNamespace.InParentNamespaceT]
self.vectorOfReferrables = None # type: List[MyGame.Example.Referrable.ReferrableT]
self.vectorOfReferrables = None # type: Optional[List[MyGame.Example.Referrable.ReferrableT]]
self.singleWeakReference = 0 # type: int
self.vectorOfWeakReferences = None # type: List[int]
self.vectorOfStrongReferrables = None # type: List[MyGame.Example.Referrable.ReferrableT]
self.vectorOfWeakReferences = None # type: Optional[List[int]]
self.vectorOfStrongReferrables = None # type: Optional[List[MyGame.Example.Referrable.ReferrableT]]
self.coOwningReference = 0 # type: int
self.vectorOfCoOwningReferences = None # type: List[int]
self.vectorOfCoOwningReferences = None # type: Optional[List[int]]
self.nonOwningReference = 0 # type: int
self.vectorOfNonOwningReferences = None # type: List[int]
self.vectorOfNonOwningReferences = None # type: Optional[List[int]]
self.anyUniqueType = 0 # type: int
self.anyUnique = None # type: Union[None, MyGame.Example.Monster.MonsterT, MyGame.Example.TestSimpleTableWithEnum.TestSimpleTableWithEnumT, MyGame.Example2.Monster.MonsterT]
self.anyAmbiguousType = 0 # type: int
self.anyAmbiguous = None # type: Union[None, MyGame.Example.Monster.MonsterT, MyGame.Example.Monster.MonsterT, MyGame.Example.Monster.MonsterT]
self.vectorOfEnums = None # type: List[int]
self.vectorOfEnums = None # type: Optional[List[int]]
self.signedEnum = -1 # type: int
self.testrequirednestedflatbuffer = None # type: List[int]
self.scalarKeySortedTables = None # type: List[MyGame.Example.Stat.StatT]
self.testrequirednestedflatbuffer = None # type: Optional[List[int]]
self.scalarKeySortedTables = None # type: Optional[List[MyGame.Example.Stat.StatT]]
self.nativeInline = None # type: Optional[MyGame.Example.Test.TestT]
self.longEnumNonEnumDefault = 0 # type: int
self.longEnumNormalDefault = 2 # type: int

View File

@@ -105,10 +105,10 @@ class NestedStructT(object):
# NestedStructT
def __init__(self):
self.a = None # type: List[int]
self.a = None # type: Optional[List[int]]
self.b = 0 # type: int
self.c = None # type: List[int]
self.d = None # type: List[int]
self.c = None # type: Optional[List[int]]
self.d = None # type: Optional[List[int]]
@classmethod
def InitFromBuf(cls, buf, pos):

View File

@@ -105,7 +105,7 @@ class NestedUnionTestT(object):
# NestedUnionTestT
def __init__(self):
self.name = None # type: str
self.name = None # type: Optional[str]
self.dataType = 0 # type: int
self.data = None # type: Union[None, MyGame.Example.NestedUnion.Vec3.Vec3T, MyGame.Example.NestedUnion.TestSimpleTableWithEnum.TestSimpleTableWithEnumT]
self.id = 0 # type: int

View File

@@ -84,7 +84,7 @@ class StatT(object):
# StatT
def __init__(self):
self.id = None # type: str
self.id = None # type: Optional[str]
self.val = 0 # type: int
self.count = 0 # type: int

View File

@@ -267,8 +267,8 @@ class TypeAliasesT(object):
self.u64 = 0 # type: int
self.f32 = 0.0 # type: float
self.f64 = 0.0 # type: float
self.v8 = None # type: List[int]
self.vf64 = None # type: List[float]
self.v8 = None # type: Optional[List[int]]
self.vf64 = None # type: Optional[List[float]]
@classmethod
def InitFromBuf(cls, buf, pos):