OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef VM_CLASS_FINALIZER_H_ | 5 #ifndef VM_CLASS_FINALIZER_H_ |
6 #define VM_CLASS_FINALIZER_H_ | 6 #define VM_CLASS_FINALIZER_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/growable_array.h" | 9 #include "vm/growable_array.h" |
10 | 10 |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 static void ResolveRedirectingFactoryTarget( | 98 static void ResolveRedirectingFactoryTarget( |
99 const Class& cls, | 99 const Class& cls, |
100 const Function& factory, | 100 const Function& factory, |
101 const GrowableObjectArray& visited_factories); | 101 const GrowableObjectArray& visited_factories); |
102 static void ApplyMixin(const Class& cls); | 102 static void ApplyMixin(const Class& cls); |
103 static void ResolveSuperTypeAndInterfaces(const Class& cls, | 103 static void ResolveSuperTypeAndInterfaces(const Class& cls, |
104 GrowableArray<intptr_t>* visited); | 104 GrowableArray<intptr_t>* visited); |
105 static void FinalizeTypeParameters(const Class& cls); | 105 static void FinalizeTypeParameters(const Class& cls); |
106 static void FinalizeTypeArguments(const Class& cls, | 106 static void FinalizeTypeArguments(const Class& cls, |
107 const AbstractTypeArguments& arguments, | 107 const AbstractTypeArguments& arguments, |
108 FinalizationKind finalization); | 108 FinalizationKind finalization, |
| 109 Error* bound_error); |
| 110 static void CheckTypeArgumentBounds(const Class& cls, |
| 111 const AbstractTypeArguments& arguments, |
| 112 Error* bound_error); |
109 static void ResolveType(const Class& cls, | 113 static void ResolveType(const Class& cls, |
110 const AbstractType& type, | 114 const AbstractType& type, |
111 FinalizationKind finalization); | 115 FinalizationKind finalization); |
112 static void ResolveAndFinalizeUpperBounds(const Class& cls); | 116 static void ResolveAndFinalizeUpperBounds(const Class& cls); |
113 static void ResolveAndFinalizeSignature(const Class& cls, | 117 static void ResolveAndFinalizeSignature(const Class& cls, |
114 const Function& function); | 118 const Function& function); |
115 static void ResolveAndFinalizeMemberTypes(const Class& cls); | 119 static void ResolveAndFinalizeMemberTypes(const Class& cls); |
116 static void PrintClassInformation(const Class& cls); | 120 static void PrintClassInformation(const Class& cls); |
117 static void CollectInterfaces(const Class& cls, | 121 static void CollectInterfaces(const Class& cls, |
118 const GrowableObjectArray& interfaces); | 122 const GrowableObjectArray& interfaces); |
119 static void ReportMalformedType(const Error& prev_error, | 123 static void ReportMalformedType(const Error& prev_error, |
120 const Class& cls, | 124 const Class& cls, |
121 const Type& type, | 125 const Type& type, |
122 FinalizationKind finalization, | 126 FinalizationKind finalization, |
123 const char* format, | 127 const char* format, |
124 va_list args); | 128 va_list args); |
125 static void ReportError(const Error& error); | 129 static void ReportError(const Error& error); |
126 static void ReportError(const Script& script, | 130 static void ReportError(const Script& script, |
127 intptr_t token_index, | 131 intptr_t token_index, |
128 const char* format, ...) PRINTF_ATTRIBUTE(3, 4); | 132 const char* format, ...) PRINTF_ATTRIBUTE(3, 4); |
129 static void ReportError(const char* format, ...) PRINTF_ATTRIBUTE(1, 2); | 133 static void ReportError(const char* format, ...) PRINTF_ATTRIBUTE(1, 2); |
130 }; | 134 }; |
131 | 135 |
132 } // namespace dart | 136 } // namespace dart |
133 | 137 |
134 #endif // VM_CLASS_FINALIZER_H_ | 138 #endif // VM_CLASS_FINALIZER_H_ |
OLD | NEW |