[introspection] Don't check native signatures on obsolete members, and ignore the right simd matrix types.

Fixes this introspection/Mac problem:

    ***** ApiSignatureTest.NativeSignatures
    Selector: uniformWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded
    Selector: uniformWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded
    Selector: uniformWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded
    Selector: setMatrixFloat2x2Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded
    Selector: setMatrixFloat3x3Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded
    Selector: setMatrixFloat4x4Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded
    Selector: initWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded
    Selector: initWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded
    Selector: initWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded
This commit is contained in:
Rolf Bjarne Kvinge 2017-09-01 11:15:41 +02:00
Родитель b80cfee33e
Коммит b97ea9f5d0
1 изменённых файлов: 7 добавлений и 3 удалений

Просмотреть файл

@ -233,6 +233,10 @@ namespace Introspection {
if (methodinfo == null && constructorinfo == null)
return;
// Don't check obsolete methods, it could be obsoleted because it was broken.
if (m.GetCustomAttributes<ObsoleteAttribute> () != null)
return;
if (m.DeclaringType != t)
return;
@ -388,9 +392,9 @@ namespace Introspection {
case "Vector4":
case "Vector4i":
case "Vector4d":
case "Matrix2":
case "Matrix3":
case "Matrix4":
case "MatrixFloat2x2":
case "MatrixFloat3x3":
case "MatrixFloat4x4":
case "MDLAxisAlignedBoundingBox": // struct { Vector3, Vector3 }
return true;
default: