Skip to content

Commit 60033a2

Browse files
authored
Merge pull request #4005 from milseman/3_0_scenekit
3.0 [SceneKit] Explicitly control some renames
2 parents 5979039 + cf2d718 commit 60033a2

File tree

2 files changed

+241
-0
lines changed

2 files changed

+241
-0
lines changed

apinotes/SceneKit.apinotes

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,98 @@ Protocols:
1515
SwiftPrivate: true
1616
MethodKind: Instance
1717

18+
#
19+
# New wrapper types will be made for these typedefs, and we want to nest them
20+
#
21+
Typedefs:
22+
- Name: SCNGeometrySourceSemantic
23+
SwiftName: SCNGeometrySource.Semantic
24+
- Name: SCNLightType
25+
SwiftName: SCNLight.LightType
26+
- Name: SCNLightingModel
27+
SwiftName: SCNMaterial.LightingModel
28+
- Name: SCNParticleProperty
29+
SwiftName: SCNParticleSystem.ParticleProperty
30+
- Name: SCNPhysicsShapeOption
31+
SwiftName: SCNPhysicsShape.Option
32+
- Name: SCNPhysicsShapeType
33+
SwiftName: SCNPhysicsShape.ShapeType
34+
- Name: SCNPhysicsTestOption
35+
SwiftName: SCNPhysicsWorld.TestOption
36+
- Name: SCNPhysicsTestSearchMode
37+
SwiftName: SCNPhysicsWorld.TestSearchMode
38+
- Name: SCNSceneAttribute
39+
SwiftName: SCNScene.Attribute
40+
- Name: SCNSceneSourceAnimationImportPolicy
41+
SwiftName: SCNSceneSource.AnimationImportPolicy
42+
- Name: SCNSceneSourceLoadingOption
43+
SwiftName: SCNSceneSource.LoadingOption
44+
- Name: SCNViewOption
45+
SwiftName: SCNView.Option
46+
47+
#
48+
# Name overrides for globals that we will be nesting onto our new wrapper types
49+
#
50+
Globals:
51+
- Name: SCNHitTestFirstFoundOnlyKey
52+
SwiftName: SCNHitTestOption.firstFoundOnly
53+
- Name: SCNHitTestSortResultsKey
54+
SwiftName: SCNHitTestOption.sortResults
55+
- Name: SCNHitTestClipToZRangeKey
56+
SwiftName: SCNHitTestOption.clipToZRange
57+
- Name: SCNHitTestBackFaceCullingKey
58+
SwiftName: SCNHitTestOption.backFaceCulling
59+
- Name: SCNHitTestBoundingBoxOnlyKey
60+
SwiftName: SCNHitTestOption.boundingBoxOnly
61+
- Name: SCNHitTestIgnoreChildNodesKey
62+
SwiftName: SCNHitTestOption.ignoreChildNodes
63+
- Name: SCNHitTestRootNodeKey
64+
SwiftName: SCNHitTestOption.rootNode
65+
- Name: SCNHitTestIgnoreHiddenNodesKey
66+
SwiftName: SCNHitTestOption.ignoreHiddenNodes
67+
- Name: SCNPhysicsShapeTypeKey
68+
SwiftName: SCNPhysicsShape.Option.type
69+
- Name: SCNPhysicsShapeKeepAsCompoundKey
70+
SwiftName: SCNPhysicsShape.Option.keepAsCompound
71+
- Name: SCNPhysicsShapeScaleKey
72+
SwiftName: SCNPhysicsShape.Option.scale
73+
- Name: SCNPhysicsTestCollisionBitMaskKey
74+
SwiftName: SCNPhysicsWorld.TestOption.collisionBitMask
75+
- Name: SCNPhysicsTestSearchModeKey
76+
SwiftName: SCNPhysicsWorld.TestOption.searchMode
77+
- Name: SCNPhysicsTestBackfaceCullingKey
78+
SwiftName: SCNPhysicsWorld.TestOption.backfaceCulling
79+
- Name: SCNSceneStartTimeAttributeKey
80+
SwiftName: SCNScene.Attribute.startTime
81+
- Name: SCNSceneEndTimeAttributeKey
82+
SwiftName: SCNScene.Attribute.endTime
83+
- Name: SCNSceneFrameRateAttributeKey
84+
SwiftName: SCNScene.Attribute.frameRate
85+
- Name: SCNSceneUpAxisAttributeKey
86+
SwiftName: SCNScene.Attribute.upAxis
87+
- Name: SCNSceneSourceCreateNormalsIfAbsentKey
88+
SwiftName: SCNSceneSource.LoadingOption.createNormalsIfAbsent
89+
- Name: SCNSceneSourceCheckConsistencyKey
90+
SwiftName: SCNSceneSource.LoadingOption.checkConsistency
91+
- Name: SCNSceneSourceFlattenSceneKey
92+
SwiftName: SCNSceneSource.LoadingOption.flattenScene
93+
- Name: SCNSceneSourceUseSafeModeKey
94+
SwiftName: SCNSceneSource.LoadingOption.useSafeMode
95+
- Name: SCNSceneSourceAssetDirectoryURLsKey
96+
SwiftName: SCNSceneSource.LoadingOption.assetDirectoryURLs
97+
- Name: SCNSceneSourceOverrideAssetURLsKey
98+
SwiftName: SCNSceneSource.LoadingOption.overrideAssetURLs
99+
- Name: SCNSceneSourceStrictConformanceKey
100+
SwiftName: SCNSceneSource.LoadingOption.strictConformance
101+
- Name: SCNSceneSourceConvertUnitsToMetersKey
102+
SwiftName: SCNSceneSource.LoadingOption.convertUnitsToMeters
103+
- Name: SCNSceneSourceConvertToYUpKey
104+
SwiftName: SCNSceneSource.LoadingOption.convertToYUp
105+
- Name: SCNSceneSourceAnimationImportPolicyKey
106+
SwiftName: SCNSceneSource.LoadingOption.animationImportPolicy
107+
- Name: SCNPreferredRenderingAPIKey
108+
SwiftName: SCNView.Option.preferredRenderingAPI
109+
- Name: SCNPreferredDeviceKey
110+
SwiftName: SCNView.Option.preferredDevice
111+
- Name: SCNPreferLowPowerDeviceKey
112+
SwiftName: SCNView.Option.preferLowPowerDevice

test/ClangModules/SceneKit_test.swift

Lines changed: 146 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,146 @@
1+
// RUN: %target-parse-verify-swift
2+
3+
// REQUIRES: objc_interop
4+
// REQUIRES: OS=macosx
5+
6+
import SceneKit
7+
import Foundation
8+
9+
// Test out some explicit renames of typedefs and globals, which are now new
10+
// wrapper types with nestest values.
11+
@available(macOS 10.11, *)
12+
func testRenames() {
13+
let _ = SCNGeometrySourceSemantic
14+
// expected-error@-1{{'SCNGeometrySourceSemantic' has been renamed to 'SCNGeometrySource.Semantic'}}
15+
let _ = SCNLightType
16+
// expected-error@-1{{'SCNLightType' has been renamed to 'SCNLight.LightType'}}
17+
let _ = SCNLightingModel
18+
// expected-error@-1{{'SCNLightingModel' has been renamed to 'SCNMaterial.LightingModel'}}
19+
let _ = SCNParticleProperty
20+
// expected-error@-1{{'SCNParticleProperty' has been renamed to 'SCNParticleSystem.ParticleProperty'}}
21+
let _ = SCNPhysicsShapeOption
22+
// expected-error@-1{{'SCNPhysicsShapeOption' has been renamed to 'SCNPhysicsShape.Option'}}
23+
let _ = SCNPhysicsShapeType
24+
// expected-error@-1{{'SCNPhysicsShapeType' has been renamed to 'SCNPhysicsShape.ShapeType'}}
25+
let _ = SCNPhysicsTestOption
26+
// expected-error@-1{{'SCNPhysicsTestOption' has been renamed to 'SCNPhysicsWorld.TestOption'}}
27+
let _ = SCNPhysicsTestSearchMode
28+
// expected-error@-1{{'SCNPhysicsTestSearchMode' has been renamed to 'SCNPhysicsWorld.TestSearchMode'}}
29+
let _ = SCNSceneAttribute
30+
// expected-error@-1{{'SCNSceneAttribute' has been renamed to 'SCNScene.Attribute'}}
31+
let _ = SCNSceneSourceAnimationImportPolicy
32+
// expected-error@-1{{'SCNSceneSourceAnimationImportPolicy' has been renamed to 'SCNSceneSource.AnimationImportPolicy'}}
33+
let _ = SCNSceneSourceLoadingOption
34+
// expected-error@-1{{'SCNSceneSourceLoadingOption' has been renamed to 'SCNSceneSource.LoadingOption'}}
35+
let _ = SCNViewOption
36+
// expected-error@-1{{'SCNViewOption' has been renamed to 'SCNView.Option'}}
37+
let _ = SCNHitTestFirstFoundOnlyKey
38+
// expected-error@-1{{'SCNHitTestFirstFoundOnlyKey' has been renamed to 'SCNHitTestOption.firstFoundOnly'}}
39+
let _ = SCNHitTestSortResultsKey
40+
// expected-error@-1{{'SCNHitTestSortResultsKey' has been renamed to 'SCNHitTestOption.sortResults'}}
41+
let _ = SCNHitTestClipToZRangeKey
42+
// expected-error@-1{{'SCNHitTestClipToZRangeKey' has been renamed to 'SCNHitTestOption.clipToZRange'}}
43+
let _ = SCNHitTestBackFaceCullingKey
44+
// expected-error@-1{{'SCNHitTestBackFaceCullingKey' has been renamed to 'SCNHitTestOption.backFaceCulling'}}
45+
let _ = SCNHitTestBoundingBoxOnlyKey
46+
// expected-error@-1{{'SCNHitTestBoundingBoxOnlyKey' has been renamed to 'SCNHitTestOption.boundingBoxOnly'}}
47+
let _ = SCNHitTestIgnoreChildNodesKey
48+
// expected-error@-1{{'SCNHitTestIgnoreChildNodesKey' has been renamed to 'SCNHitTestOption.ignoreChildNodes'}}
49+
let _ = SCNHitTestRootNodeKey
50+
// expected-error@-1{{'SCNHitTestRootNodeKey' has been renamed to 'SCNHitTestOption.rootNode'}}
51+
let _ = SCNHitTestIgnoreHiddenNodesKey
52+
// expected-error@-1{{'SCNHitTestIgnoreHiddenNodesKey' has been renamed to 'SCNHitTestOption.ignoreHiddenNodes'}}
53+
let _ = SCNPhysicsShapeTypeKey
54+
// expected-error@-1{{'SCNPhysicsShapeTypeKey' has been renamed to 'SCNPhysicsShape.Option.type'}}
55+
let _ = SCNPhysicsShapeKeepAsCompoundKey
56+
// expected-error@-1{{'SCNPhysicsShapeKeepAsCompoundKey' has been renamed to 'SCNPhysicsShape.Option.keepAsCompound'}}
57+
let _ = SCNPhysicsShapeScaleKey
58+
// expected-error@-1{{'SCNPhysicsShapeScaleKey' has been renamed to 'SCNPhysicsShape.Option.scale'}}
59+
let _ = SCNPhysicsTestCollisionBitMaskKey
60+
// expected-error@-1{{'SCNPhysicsTestCollisionBitMaskKey' has been renamed to 'SCNPhysicsWorld.TestOption.collisionBitMask'}}
61+
let _ = SCNPhysicsTestSearchModeKey
62+
// expected-error@-1{{'SCNPhysicsTestSearchModeKey' has been renamed to 'SCNPhysicsWorld.TestOption.searchMode'}}
63+
let _ = SCNPhysicsTestBackfaceCullingKey
64+
// expected-error@-1{{'SCNPhysicsTestBackfaceCullingKey' has been renamed to 'SCNPhysicsWorld.TestOption.backfaceCulling'}}
65+
let _ = SCNSceneStartTimeAttributeKey
66+
// expected-error@-1{{'SCNSceneStartTimeAttributeKey' has been renamed to 'SCNScene.Attribute.startTime'}}
67+
let _ = SCNSceneEndTimeAttributeKey
68+
// expected-error@-1{{'SCNSceneEndTimeAttributeKey' has been renamed to 'SCNScene.Attribute.endTime'}}
69+
let _ = SCNSceneFrameRateAttributeKey
70+
// expected-error@-1{{'SCNSceneFrameRateAttributeKey' has been renamed to 'SCNScene.Attribute.frameRate'}}
71+
let _ = SCNSceneUpAxisAttributeKey
72+
// expected-error@-1{{'SCNSceneUpAxisAttributeKey' has been renamed to 'SCNScene.Attribute.upAxis'}}
73+
let _ = SCNSceneSourceCreateNormalsIfAbsentKey
74+
// expected-error@-1{{'SCNSceneSourceCreateNormalsIfAbsentKey' has been renamed to 'SCNSceneSource.LoadingOption.createNormalsIfAbsent'}}
75+
let _ = SCNSceneSourceCheckConsistencyKey
76+
// expected-error@-1{{'SCNSceneSourceCheckConsistencyKey' has been renamed to 'SCNSceneSource.LoadingOption.checkConsistency'}}
77+
let _ = SCNSceneSourceFlattenSceneKey
78+
// expected-error@-1{{'SCNSceneSourceFlattenSceneKey' has been renamed to 'SCNSceneSource.LoadingOption.flattenScene'}}
79+
let _ = SCNSceneSourceUseSafeModeKey
80+
// expected-error@-1{{'SCNSceneSourceUseSafeModeKey' has been renamed to 'SCNSceneSource.LoadingOption.useSafeMode'}}
81+
let _ = SCNSceneSourceAssetDirectoryURLsKey
82+
// expected-error@-1{{'SCNSceneSourceAssetDirectoryURLsKey' has been renamed to 'SCNSceneSource.LoadingOption.assetDirectoryURLs'}}
83+
let _ = SCNSceneSourceOverrideAssetURLsKey
84+
// expected-error@-1{{'SCNSceneSourceOverrideAssetURLsKey' has been renamed to 'SCNSceneSource.LoadingOption.overrideAssetURLs'}}
85+
let _ = SCNSceneSourceStrictConformanceKey
86+
// expected-error@-1{{'SCNSceneSourceStrictConformanceKey' has been renamed to 'SCNSceneSource.LoadingOption.strictConformance'}}
87+
let _ = SCNSceneSourceConvertUnitsToMetersKey
88+
// expected-error@-1{{'SCNSceneSourceConvertUnitsToMetersKey' has been renamed to 'SCNSceneSource.LoadingOption.convertUnitsToMeters'}}
89+
let _ = SCNSceneSourceConvertToYUpKey
90+
// expected-error@-1{{'SCNSceneSourceConvertToYUpKey' has been renamed to 'SCNSceneSource.LoadingOption.convertToYUp'}}
91+
let _ = SCNSceneSourceAnimationImportPolicyKey
92+
// expected-error@-1{{'SCNSceneSourceAnimationImportPolicyKey' has been renamed to 'SCNSceneSource.LoadingOption.animationImportPolicy'}}
93+
let _ = SCNPreferredRenderingAPIKey
94+
// expected-error@-1{{'SCNPreferredRenderingAPIKey' has been renamed to 'SCNView.Option.preferredRenderingAPI'}}
95+
let _ = SCNPreferredDeviceKey
96+
// expected-error@-1{{'SCNPreferredDeviceKey' has been renamed to 'SCNView.Option.preferredDevice'}}
97+
let _ = SCNPreferLowPowerDeviceKey
98+
// expected-error@-1{{'SCNPreferLowPowerDeviceKey' has been renamed to 'SCNView.Option.preferLowPowerDevice'}}
99+
}
100+
101+
@available(macOS 10.11, *)
102+
func useRenamedValues() {
103+
let _ = SCNGeometrySource.Semantic.self
104+
let _ = SCNLight.LightType.self
105+
let _ = SCNMaterial.LightingModel.self
106+
let _ = SCNParticleSystem.ParticleProperty.self
107+
let _ = SCNPhysicsShape.Option.self
108+
let _ = SCNPhysicsShape.ShapeType.self
109+
let _ = SCNPhysicsWorld.TestOption.self
110+
let _ = SCNPhysicsWorld.TestSearchMode.self
111+
let _ = SCNScene.Attribute.self
112+
let _ = SCNSceneSource.AnimationImportPolicy.self
113+
let _ = SCNSceneSource.LoadingOption.self
114+
let _ = SCNView.Option.self
115+
let _ = SCNHitTestOption.firstFoundOnly
116+
let _ = SCNHitTestOption.sortResults
117+
let _ = SCNHitTestOption.clipToZRange
118+
let _ = SCNHitTestOption.backFaceCulling
119+
let _ = SCNHitTestOption.boundingBoxOnly
120+
let _ = SCNHitTestOption.ignoreChildNodes
121+
let _ = SCNHitTestOption.rootNode
122+
let _ = SCNHitTestOption.ignoreHiddenNodes
123+
let _ = SCNPhysicsShape.Option.type
124+
let _ = SCNPhysicsShape.Option.keepAsCompound
125+
let _ = SCNPhysicsShape.Option.scale
126+
let _ = SCNPhysicsWorld.TestOption.collisionBitMask
127+
let _ = SCNPhysicsWorld.TestOption.searchMode
128+
let _ = SCNPhysicsWorld.TestOption.backfaceCulling
129+
let _ = SCNScene.Attribute.startTime
130+
let _ = SCNScene.Attribute.endTime
131+
let _ = SCNScene.Attribute.frameRate
132+
let _ = SCNScene.Attribute.upAxis
133+
let _ = SCNSceneSource.LoadingOption.createNormalsIfAbsent
134+
let _ = SCNSceneSource.LoadingOption.checkConsistency
135+
let _ = SCNSceneSource.LoadingOption.flattenScene
136+
let _ = SCNSceneSource.LoadingOption.useSafeMode
137+
let _ = SCNSceneSource.LoadingOption.assetDirectoryURLs
138+
let _ = SCNSceneSource.LoadingOption.overrideAssetURLs
139+
let _ = SCNSceneSource.LoadingOption.strictConformance
140+
let _ = SCNSceneSource.LoadingOption.convertUnitsToMeters
141+
let _ = SCNSceneSource.LoadingOption.convertToYUp
142+
let _ = SCNSceneSource.LoadingOption.animationImportPolicy
143+
let _ = SCNView.Option.preferredRenderingAPI
144+
let _ = SCNView.Option.preferredDevice
145+
let _ = SCNView.Option.preferLowPowerDevice
146+
}

0 commit comments

Comments
 (0)