@@ -95,6 +95,9 @@ class PatternBindingInitializer : public Initializer {
9595 return new (parent->getASTContext ()) PatternBindingInitializer (parent);
9696 }
9797
98+ static PatternBindingInitializer *createDeserialized (PatternBindingDecl *PBD,
99+ unsigned index);
100+
98101 void setBinding (PatternBindingDecl *binding, unsigned bindingIndex) {
99102 setParent (binding->getDeclContext ());
100103 Binding = binding;
@@ -122,37 +125,6 @@ class PatternBindingInitializer : public Initializer {
122125 }
123126};
124127
125- // / SerializedPatternBindingInitializer - This represents what was originally a
126- // / PatternBindingInitializer during serialization. It is preserved as a special
127- // / class only to maintain the correct AST structure and remangling after
128- // / deserialization.
129- class SerializedPatternBindingInitializer : public SerializedLocalDeclContext {
130- PatternBindingDecl *Binding;
131-
132- public:
133- SerializedPatternBindingInitializer (PatternBindingDecl *Binding,
134- unsigned bindingIndex)
135- : SerializedLocalDeclContext(LocalDeclContextKind::PatternBindingInitializer,
136- Binding->getDeclContext ()),
137- Binding(Binding) {
138- SpareBits = bindingIndex;
139- }
140-
141- PatternBindingDecl *getBinding () const {
142- return Binding;
143- }
144-
145- unsigned getBindingIndex () const { return SpareBits; }
146-
147-
148- static bool classof (const DeclContext *DC) {
149- if (auto LDC = dyn_cast<SerializedLocalDeclContext>(DC))
150- return LDC->getLocalDeclContextKind () ==
151- LocalDeclContextKind::PatternBindingInitializer;
152- return false ;
153- }
154- };
155-
156128// / A default argument expression. The parent context is the function
157129// / (possibly a closure) for which this is a default argument.
158130class DefaultArgumentInitializer : public Initializer {
0 commit comments