Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit a3ffe06

Browse files
authoredJul 26, 2024··
Merge branch 'master' into feature/add-validation-logic
2 parents 8299037 + 4334e91 commit a3ffe06

File tree

9 files changed

+175
-124
lines changed

9 files changed

+175
-124
lines changed
 

‎scripts/build/builders/nrf.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -239,6 +239,6 @@ def build_outputs(self):
239239
def bundle_outputs(self):
240240
if self.app == NrfApp.UNIT_TESTS:
241241
return
242-
with open(os.path.join(self.output_dir, self.app.FlashBundleName())) as f:
242+
with open(os.path.join(self.output_dir, 'nrfconnect', self.app.FlashBundleName())) as f:
243243
for line in filter(None, [x.strip() for x in f.readlines()]):
244-
yield BuilderOutput(os.path.join(self.output_dir, line), line)
244+
yield BuilderOutput(os.path.join(self.output_dir, 'nrfconnect', line), line)

‎src/darwin/Framework/CHIP/templates/MTRBaseClusters.zapt

+7-44
Original file line numberDiff line numberDiff line change
@@ -107,53 +107,16 @@ subscriptionEstablished:(MTRSubscriptionEstablishedHandler _Nullable)subscriptio
107107
{{/unless}}
108108
{{/zcl_clusters}}
109109

110-
{{#zcl_clusters}}
111110
{{#zcl_enums}}
112-
{{#*inline "enumDef"}}
113-
typedef NS_ENUM({{asUnderlyingZclType name}}, {{objCEnumName clusterName enumName}}) {
114-
{{#zcl_enum_items}}
115-
{{#if (isSupported ../clusterName enum=../enumName enumValue=(asUpperCamelCase label preserveAcronyms=true))}}
116-
{{objCEnumName ../clusterName ../enumName}}{{asUpperCamelCase label preserveAcronyms=true}} {{availability ../clusterName enum=../enumName enumValue=(asUpperCamelCase label preserveAcronyms=true) deprecationMessage=(concat "Please use " (objCEnumName (asUpperCamelCase ../../name preserveAcronyms=true) ../label) (asUpperCamelCase label preserveAcronyms=true))}} = {{asHex value 2}},
117-
{{/if}}
118-
{{#*inline "oldNameItemDecl"}}
119-
{{#if oldItemName}}
120-
{{#if (isSupported ../clusterName enum=../enumName enumValue=oldItemName)}}
121-
{{objCEnumName ../clusterName ../enumName}}{{objCEnumItemLabel oldItemName}} {{availability ../clusterName enum=../enumName enumValue=oldItemName deprecationMessage=(concat "Please use " (objCEnumName (asUpperCamelCase ../../name preserveAcronyms=true) ../label) (asUpperCamelCase label preserveAcronyms=true))}} = {{asHex value 2}},
122-
{{/if}}
123-
{{/if}}
124-
{{/inline}}
125-
{{> oldNameItemDecl oldItemName=(oldName ../clusterName enum=../enumName enumValue=(asUpperCamelCase label preserveAcronyms=true))}}
126-
{{/zcl_enum_items}}
127-
{{!We had extra "Not Supported" values for DoorLockUserStatus/DoorLockUserType that we have to wedge in here manually for now.}}
128-
{{#if (and (isStrEqual clusterName "DoorLock")
129-
(or (isStrEqual enumName "UserTypeEnum") (isStrEqual enumName "UserStatusEnum"))
130-
(isSupported clusterName enum=enumName enumValue="NotSupported"))}}
131-
{{objCEnumName clusterName enumName}}{{objCEnumItemLabel "NotSupported"}} {{availability clusterName enum=enumName enumValue="NotSupported" deprecationMessage="This value is not part of the specification and will be removed"}} = 0xFF,
132-
{{/if}}
133-
}
134-
{{/inline}}
135-
{{#if (isSupported (asUpperCamelCase ../name preserveAcronyms=true) enum=(asUpperCamelCase label preserveAcronyms=true))}}
136-
{{> enumDef name=name clusterName=(asUpperCamelCase ../name preserveAcronyms=true) enumName=(asUpperCamelCase label preserveAcronyms=true)}} {{availability (asUpperCamelCase ../name preserveAcronyms=true) enum=(asUpperCamelCase label preserveAcronyms=true) deprecationMessage="This enum is unused and will be removed"}};
137-
{{/if}}
138-
{{! Takes the name of the enum to use as enumName. }}
139-
{{#*inline "oldNameDecl"}}
140-
{{#if (isSupported (compatClusterNameRemapping ../name) enum=enumName)}}
111+
{{#if has_no_clusters}}
112+
{{> enum_decl cluster="Globals" name=name enumLabel=label}}
141113

142-
{{> enumDef name=name clusterName=(compatClusterNameRemapping ../name) enumName=enumName}} {{availability (compatClusterNameRemapping ../name) enum=enumName deprecationMessage=(concat "Please use " (objCEnumName (asUpperCamelCase ../name preserveAcronyms=true) label))}};
143114
{{/if}}
144-
{{/inline}}
145-
{{! Takes the old name of the enum, if any, as oldEnumName. }}
146-
{{#*inline "oldNameCheck"}}
147-
{{#if (or oldEnumName
148-
(hasOldName (asUpperCamelCase ../name preserveAcronyms=true)))}}
149-
{{#if oldEnumName}}
150-
{{> oldNameDecl enumName=oldEnumName}}
151-
{{else}}
152-
{{> oldNameDecl enumName=(asUpperCamelCase label preserveAcronyms=true)}}
153-
{{/if}}
154-
{{/if}}
155-
{{/inline}}
156-
{{> oldNameCheck oldEnumName=(oldName (asUpperCamelCase ../name preserveAcronyms=true) enum=(asUpperCamelCase label preserveAcronyms=true))}}
115+
{{/zcl_enums}}
116+
117+
{{#zcl_clusters}}
118+
{{#zcl_enums}}
119+
{{> enum_decl cluster=../name name=name enumLabel=label}}
157120

158121
{{/zcl_enums}}
159122
{{#zcl_bitmaps}}

‎src/darwin/Framework/CHIP/templates/MTRStructsObjc-src.zapt

+6-53
Original file line numberDiff line numberDiff line change
@@ -4,62 +4,15 @@
44

55
NS_ASSUME_NONNULL_BEGIN
66

7-
{{#zcl_clusters}}
87
{{#zcl_structs}}
9-
{{#*inline "interfaceImpl"}}
10-
@implementation {{interfaceName}}
11-
- (instancetype)init
12-
{
13-
if (self = [super init]) {
14-
{{#zcl_struct_items}}
15-
{{#if (isSupported (asUpperCamelCase parent.parent.name preserveAcronyms=true) struct=(asUpperCamelCase parent.name preserveAcronyms=true) structField=(asStructPropertyName label))}}
16-
{{>init_struct_member label=label type=type cluster=parent.parent.name}}
17-
{{/if}}
18-
{{/zcl_struct_items}}
19-
}
20-
return self;
21-
}
22-
23-
- (id)copyWithZone:(NSZone * _Nullable)zone
24-
{
25-
auto other = [[{{interfaceName}} alloc] init];
26-
27-
{{#zcl_struct_items}}
28-
{{#if (isSupported (asUpperCamelCase parent.parent.name preserveAcronyms=true) struct=(asUpperCamelCase parent.name preserveAcronyms=true) structField=(asStructPropertyName label))}}
29-
other.{{asStructPropertyName label}} = self.{{asStructPropertyName label}};
30-
{{/if}}
31-
{{/zcl_struct_items}}
32-
33-
return other;
34-
}
35-
36-
- (NSString *)description
37-
{
38-
NSString *descriptionString = [NSString stringWithFormat:@"<%@: {{#zcl_struct_items~}}
39-
{{~#if (isSupported (asUpperCamelCase parent.parent.name preserveAcronyms=true) struct=(asUpperCamelCase parent.name preserveAcronyms=true) structField=(asStructPropertyName label))~}}
40-
{{~asStructPropertyName label}}:%@; {{!Just here to keep the preceding space}}
41-
{{~/if~}}
42-
{{~/zcl_struct_items}}>", NSStringFromClass([self class]){{#zcl_struct_items~}}
43-
{{~#if (isSupported (asUpperCamelCase parent.parent.name preserveAcronyms=true) struct=(asUpperCamelCase parent.name preserveAcronyms=true) structField=(asStructPropertyName label))~}}
44-
,{{#if isArray}}_{{asStructPropertyName label}}{{else if (isOctetString type)}}[_{{asStructPropertyName label}} base64EncodedStringWithOptions:0]{{else}}_{{asStructPropertyName label}}{{/if}}
45-
{{~/if~}}
46-
{{~/zcl_struct_items}}];
47-
return descriptionString;
48-
}
49-
{{#zcl_struct_items}}
50-
{{#if (and (hasOldName (asUpperCamelCase ../../name preserveAcronyms=true) struct=(asUpperCamelCase ../name preserveAcronyms=true) structField=(asStructPropertyName label))
51-
(isSupported (asUpperCamelCase ../../name preserveAcronyms=true) struct=(asUpperCamelCase ../name preserveAcronyms=true) structField=(oldName (asUpperCamelCase ../../name preserveAcronyms=true) struct=(asUpperCamelCase ../name preserveAcronyms=true) structField=(asStructPropertyName label))))}}
52-
53-
{{> renamed_struct_field_impl cluster=../../name type=type newName=label oldName=(oldName (asUpperCamelCase ../../name preserveAcronyms=true) struct=(asUpperCamelCase ../name preserveAcronyms=true) structField=(asStructPropertyName label))}}
8+
{{#if has_no_clusters}}
9+
{{> struct_interface_impl cluster="Globals" struct=name}}
5410
{{/if}}
55-
{{/zcl_struct_items}}
56-
57-
@end
58-
{{/inline}}
11+
{{/zcl_structs}}
5912

60-
{{#if (isSupported (asUpperCamelCase parent.name preserveAcronyms=true) struct=(asUpperCamelCase name preserveAcronyms=true))}}
61-
{{> interfaceImpl interfaceName=(concat "MTR" (asUpperCamelCase parent.name preserveAcronyms=true) "Cluster" (asUpperCamelCase name preserveAcronyms=true))}}
62-
{{/if}}
13+
{{#zcl_clusters}}
14+
{{#zcl_structs}}
15+
{{> struct_interface_impl cluster=parent.name struct=name}}
6316

6417
{{! Takes the name of the struct to use as structName. }}
6518
{{#*inline "oldNameImpl"}}

‎src/darwin/Framework/CHIP/templates/MTRStructsObjc.zapt

+11-25
Original file line numberDiff line numberDiff line change
@@ -4,36 +4,22 @@
44

55
NS_ASSUME_NONNULL_BEGIN
66

7-
{{#zcl_clusters}}
87
{{#zcl_structs}}
9-
{{#*inline "interfaceDecl"}}
10-
{{#zcl_struct_items}}
11-
{{#if (isSupported ../cluster struct=../struct structField=(asStructPropertyName label))}}
12-
{{> struct_field_decl cluster=../cluster type=type label=label}} {{availability (asUpperCamelCase ../cluster preserveAcronyms=true) struct=../struct structField=(asStructPropertyName label) deprecationMessage=(concat "Please use MTR" (asUpperCamelCase ../../name preserveAcronyms=true) "Cluster" (asUpperCamelCase ../name preserveAcronyms=true))}};
13-
{{/if}}
14-
{{#if (hasOldName ../cluster struct=../struct structField=(asStructPropertyName label))}}
15-
{{#if (isSupported ../cluster struct=../struct structField=(oldName ../cluster struct=../struct structField=(asStructPropertyName label)))}}
16-
{{> struct_field_decl cluster=../cluster type=type label=(oldName ../cluster struct=../struct structField=(asStructPropertyName label))}} {{availability ../cluster struct=../struct structField=(oldName ../cluster struct=../struct structField=(asStructPropertyName label)) deprecationMessage=(concat "Please use " (asStructPropertyName label))}};
17-
{{/if}}
8+
{{#if has_no_clusters}}
9+
{{> struct_interface_decl cluster="Globals" originalCluster="Globals" struct=(asUpperCamelCase name preserveAcronyms=true) baseName="" deprecationMessage="This struct is unused and will be removed"}}
1810
{{/if}}
19-
{{/zcl_struct_items}}
20-
{{/inline}}
21-
{{#if (isSupported (asUpperCamelCase parent.name preserveAcronyms=true) struct=(asUpperCamelCase name preserveAcronyms=true))}}
22-
{{availability (asUpperCamelCase parent.name preserveAcronyms=true) struct=(asUpperCamelCase name preserveAcronyms=true) deprecationMessage="This struct is unused and will be removed"}}
23-
@interface MTR{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}} : NSObject <NSCopying>
24-
{{> interfaceDecl cluster=(asUpperCamelCase parent.name preserveAcronyms=true) struct=(asUpperCamelCase name preserveAcronyms=true)}}
25-
@end
11+
{{/zcl_structs}}
2612

27-
{{/if}}
13+
{{#zcl_clusters}}
14+
{{#zcl_structs}}
15+
{{> struct_interface_decl cluster=(asUpperCamelCase parent.name preserveAcronyms=true) originalCluster=parent.name struct=(asUpperCamelCase name preserveAcronyms=true) baseName="" deprecationMessage="This struct is unused and will be removed"}}
2816
{{! Takes the name of the struct to use as structName. }}
2917
{{#*inline "oldNameDecl"}}
30-
{{#if (isSupported (compatClusterNameRemapping parent.name) struct=structName)}}
31-
{{availability (compatClusterNameRemapping parent.name) struct=structName deprecationMessage=(concat "Please use MTR" (asUpperCamelCase parent.name preserveAcronyms=true) "Cluster" (asUpperCamelCase name preserveAcronyms=true))}}
32-
@interface MTR{{compatClusterNameRemapping parent.name}}Cluster{{structName}} : MTR{{asUpperCamelCase parent.name preserveAcronyms=true}}Cluster{{asUpperCamelCase name preserveAcronyms=true}}
33-
{{> interfaceDecl cluster=(compatClusterNameRemapping parent.name) struct=structName}}
34-
@end
35-
36-
{{/if}}
18+
{{> struct_interface_decl cluster=(compatClusterNameRemapping parent.name)
19+
originalCluster=parent.name
20+
struct=structName
21+
baseName=(concat "MTR" (asUpperCamelCase parent.name preserveAcronyms=true) "Cluster" (asUpperCamelCase name preserveAcronyms=true))
22+
deprecationMessage=(concat "Please use MTR" (asUpperCamelCase parent.name preserveAcronyms=true) "Cluster" (asUpperCamelCase name preserveAcronyms=true))}}
3723
{{/inline}}
3824
{{! Takes the old name of the struct, if any, as oldStructName. }}
3925
{{#*inline "oldNameCheck"}}

‎src/darwin/Framework/CHIP/templates/availability.yaml

+9
Original file line numberDiff line numberDiff line change
@@ -9717,3 +9717,12 @@
97179717
Feature:
97189718
# Targeting 1.4
97199719
- ActionSwitch
9720+
removed:
9721+
structs:
9722+
Globals:
9723+
# Don't enable TestGlobalStruct until the ZAP side is fixed to handle it properly
9724+
- TestGlobalStruct
9725+
enums:
9726+
Globals:
9727+
# Don't enable TestGlobalEnum until the ZAP side is fixed to handle it properly
9728+
- TestGlobalEnum
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{{! Arguments: cluster (might be "Globals", is not case-canonicalized), name, enumLabel }}
2+
{{#*inline "enumDef"}}
3+
typedef NS_ENUM({{asUnderlyingZclType name}}, {{objCEnumName clusterName enumName}}) {
4+
{{#zcl_enum_items}}
5+
{{#if (isSupported ../clusterName enum=../enumName enumValue=(asUpperCamelCase label preserveAcronyms=true))}}
6+
{{objCEnumName ../clusterName ../enumName}}{{asUpperCamelCase label preserveAcronyms=true}} {{availability ../clusterName enum=../enumName enumValue=(asUpperCamelCase label preserveAcronyms=true) deprecationMessage=(concat "Please use " (objCEnumName (asUpperCamelCase ../cluster preserveAcronyms=true) ../enumLabel) (asUpperCamelCase label preserveAcronyms=true))}} = {{asHex value 2}},
7+
{{/if}}
8+
{{#*inline "oldNameItemDecl"}}
9+
{{#if oldItemName}}
10+
{{#if (isSupported ../clusterName enum=../enumName enumValue=oldItemName)}}
11+
{{objCEnumName ../clusterName ../enumName}}{{objCEnumItemLabel oldItemName}} {{availability ../clusterName enum=../enumName enumValue=oldItemName deprecationMessage=(concat "Please use " (objCEnumName (asUpperCamelCase ../cluster preserveAcronyms=true) ../enumLabel) (asUpperCamelCase label preserveAcronyms=true))}} = {{asHex value 2}},
12+
{{/if}}
13+
{{/if}}
14+
{{/inline}}
15+
{{> oldNameItemDecl oldItemName=(oldName ../clusterName enum=../enumName enumValue=(asUpperCamelCase label preserveAcronyms=true))}}
16+
{{/zcl_enum_items}}
17+
{{!We had extra "Not Supported" values for DoorLockUserStatus/DoorLockUserType that we have to wedge in here manually for now.}}
18+
{{#if (and (isStrEqual clusterName "DoorLock")
19+
(or (isStrEqual enumName "UserTypeEnum") (isStrEqual enumName "UserStatusEnum"))
20+
(isSupported clusterName enum=enumName enumValue="NotSupported"))}}
21+
{{objCEnumName clusterName enumName}}{{objCEnumItemLabel "NotSupported"}} {{availability clusterName enum=enumName enumValue="NotSupported" deprecationMessage="This value is not part of the specification and will be removed"}} = 0xFF,
22+
{{/if}}
23+
}
24+
{{/inline}}
25+
{{#if (isSupported (asUpperCamelCase cluster preserveAcronyms=true) enum=(asUpperCamelCase enumLabel preserveAcronyms=true))}}
26+
{{> enumDef name=name clusterName=(asUpperCamelCase cluster preserveAcronyms=true) enumName=(asUpperCamelCase enumLabel preserveAcronyms=true)}} {{availability (asUpperCamelCase cluster preserveAcronyms=true) enum=(asUpperCamelCase enumLabel preserveAcronyms=true) deprecationMessage="This enum is unused and will be removed"}};
27+
{{/if}}
28+
{{! Takes the name of the enum to use as enumName. }}
29+
{{#*inline "oldNameDecl"}}
30+
{{#if (isSupported (compatClusterNameRemapping cluster) enum=enumName)}}
31+
32+
{{> enumDef name=name clusterName=(compatClusterNameRemapping cluster) enumName=enumName}} {{availability (compatClusterNameRemapping cluster) enum=enumName deprecationMessage=(concat "Please use " (objCEnumName (asUpperCamelCase cluster preserveAcronyms=true) enumLabel))}};
33+
{{/if}}
34+
{{/inline}}
35+
{{! Takes the old name of the enum, if any, as oldEnumName. }}
36+
{{#*inline "oldNameCheck"}}
37+
{{#if (or oldEnumName
38+
(hasOldName (asUpperCamelCase cluster preserveAcronyms=true)))}}
39+
{{#if oldEnumName}}
40+
{{> oldNameDecl enumName=oldEnumName}}
41+
{{else}}
42+
{{> oldNameDecl enumName=(asUpperCamelCase enumLabel preserveAcronyms=true)}}
43+
{{/if}}
44+
{{/if}}
45+
{{/inline}}
46+
{{> oldNameCheck oldEnumName=(oldName (asUpperCamelCase cluster preserveAcronyms=true) enum=(asUpperCamelCase enumLabel preserveAcronyms=true))}}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
{{! Arguments: cluster (might be "Globals", is case-canonicalized already), originalCluster (the name before remapping and whatnot), struct, baseName (might be "" to indicate NSObject), deprecationMessage }}
2+
{{#if (isSupported cluster struct=struct)}}
3+
{{availability cluster struct=struct deprecationMessage=deprecationMessage}}
4+
@interface {{#if (isStrEqual cluster "Globals") ~}}
5+
MTRDataType{{struct}}
6+
{{~else~}}
7+
MTR{{cluster}}Cluster{{struct}}
8+
{{~/if}} : {{#if (isStrEqual baseName "")~}}
9+
NSObject<NSCopying>
10+
{{~else~}}
11+
{{baseName}}
12+
{{~/if}}
13+
{{#zcl_struct_items}}
14+
{{#if (isSupported ../cluster struct=../struct structField=(asStructPropertyName label))}}
15+
{{> struct_field_decl cluster=../cluster type=type label=label}} {{availability ../cluster struct=../struct structField=(asStructPropertyName label) deprecationMessage=(concat "Please use MTR" (asUpperCamelCase ../originalCluster preserveAcronyms=true) "Cluster" (asUpperCamelCase ../name preserveAcronyms=true))}};
16+
{{/if}}
17+
{{#if (hasOldName ../cluster struct=../struct structField=(asStructPropertyName label))}}
18+
{{#if (isSupported ../cluster struct=../struct structField=(oldName ../cluster struct=../struct structField=(asStructPropertyName label)))}}
19+
{{> struct_field_decl cluster=../cluster type=type label=(oldName ../cluster struct=../struct structField=(asStructPropertyName label))}} {{availability ../cluster struct=../struct structField=(oldName ../cluster struct=../struct structField=(asStructPropertyName label)) deprecationMessage=(concat "Please use " (asStructPropertyName label))}};
20+
{{/if}}
21+
{{/if}}
22+
{{/zcl_struct_items}}
23+
@end
24+
25+
{{/if}}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
{{! Arguments: cluster (might be "Globals", not case-canonicalized), struct }}
2+
{{! Avoid uppercasing stuff all the time by wrapping the whole thing in an inline that takes cluster,
3+
originalCluster, and struct, where cluster and struct are uppercased }}
4+
{{#*inline "interfaceImpl"}}
5+
{{#if (isSupported cluster struct=struct)}}
6+
@implementation {{asObjectiveCClass struct cluster}}
7+
- (instancetype)init
8+
{
9+
if (self = [super init]) {
10+
{{#zcl_struct_items}}
11+
{{#if (isSupported ../cluster struct=../struct structField=(asStructPropertyName label))}}
12+
{{>init_struct_member label=label type=type cluster=../originalCluster}}
13+
{{/if}}
14+
{{/zcl_struct_items}}
15+
}
16+
return self;
17+
}
18+
19+
- (id)copyWithZone:(NSZone * _Nullable)zone
20+
{
21+
auto other = [[{{asObjectiveCClass struct cluster}} alloc] init];
22+
23+
{{#zcl_struct_items}}
24+
{{#if (isSupported ../cluster struct=../struct structField=(asStructPropertyName label))}}
25+
other.{{asStructPropertyName label}} = self.{{asStructPropertyName label}};
26+
{{/if}}
27+
{{/zcl_struct_items}}
28+
29+
return other;
30+
}
31+
32+
- (NSString *)description
33+
{
34+
NSString *descriptionString = [NSString stringWithFormat:@"<%@: {{#zcl_struct_items~}}
35+
{{~#if (isSupported ../cluster struct=../struct structField=(asStructPropertyName label))~}}
36+
{{~asStructPropertyName label}}:%@; {{!Just here to keep the preceding space}}
37+
{{~/if~}}
38+
{{~/zcl_struct_items}}>", NSStringFromClass([self class]){{#zcl_struct_items~}}
39+
{{~#if (isSupported ../cluster struct=../struct structField=(asStructPropertyName label))~}}
40+
,{{#if isArray}}_{{asStructPropertyName label}}{{else if (isOctetString type)}}[_{{asStructPropertyName label}} base64EncodedStringWithOptions:0]{{else}}_{{asStructPropertyName label}}{{/if}}
41+
{{~/if~}}
42+
{{~/zcl_struct_items}}];
43+
return descriptionString;
44+
}
45+
{{#zcl_struct_items}}
46+
{{#if (and (hasOldName ../cluster struct=../struct structField=(asStructPropertyName label))
47+
(isSupported ../cluster struct=../struct structField=(oldName ../cluster struct=../struct structField=(asStructPropertyName label))))}}
48+
49+
{{> renamed_struct_field_impl cluster=../originalCluster type=type newName=label oldName=(oldName ../cluster struct=../struct structField=(asStructPropertyName label))}}
50+
{{/if}}
51+
{{/zcl_struct_items}}
52+
53+
@end
54+
55+
{{/if}}
56+
{{/inline}}
57+
{{> interfaceImpl cluster=(asUpperCamelCase cluster preserveAcronyms=true) originalCluster=cluster struct=(asUpperCamelCase struct preserveAcronyms=true)}}

‎src/darwin/Framework/CHIP/templates/templates.json

+12
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,18 @@
4444
"name": "struct_field_decl",
4545
"path": "partials/struct_field_decl.zapt"
4646
},
47+
{
48+
"name": "struct_interface_decl",
49+
"path": "partials/struct_interface_decl.zapt"
50+
},
51+
{
52+
"name": "struct_interface_impl",
53+
"path": "partials/struct_interface_impl.zapt"
54+
},
55+
{
56+
"name": "enum_decl",
57+
"path": "partials/enum_decl.zapt"
58+
},
4759
{
4860
"name": "renamed_struct_field_impl",
4961
"path": "partials/renamed_struct_field_impl.zapt"

0 commit comments

Comments
 (0)
Please sign in to comment.