File tree Expand file tree Collapse file tree 4 files changed +420
-405
lines changed Expand file tree Collapse file tree 4 files changed +420
-405
lines changed Original file line number Diff line number Diff line change @@ -31,10 +31,12 @@ class Type;
31
31
32
32
namespace swift {
33
33
34
+ class ConcreteDeclRef ;
34
35
class Decl ;
35
36
class DeclContext ;
36
37
class EffectiveClangContext ;
37
38
class SwiftLookupTable ;
39
+ class ValueDecl ;
38
40
class VisibleDeclConsumer ;
39
41
40
42
// / Represents the different namespaces for types in C.
@@ -201,6 +203,10 @@ class ClangModuleLoader : public ModuleLoader {
201
203
instantiateCXXClassTemplate (clang::ClassTemplateDecl *decl,
202
204
ArrayRef<clang::TemplateArgument> arguments) = 0 ;
203
205
206
+ virtual ConcreteDeclRef
207
+ getCXXFunctionTemplateSpecialization (SubstitutionMap subst,
208
+ ValueDecl *decl) = 0 ;
209
+
204
210
// / Try to parse the string as a Clang function type.
205
211
// /
206
212
// / Returns null if there was a parsing failure.
Original file line number Diff line number Diff line change @@ -61,17 +61,20 @@ class CompilerInvocation;
61
61
class ClangImporterOptions ;
62
62
class ClangModuleUnit ;
63
63
class ClangNode ;
64
+ class ConcreteDeclRef ;
64
65
class Decl ;
65
66
class DeclContext ;
66
67
class EffectiveClangContext ;
67
68
class EnumDecl ;
69
+ class FuncDecl ;
68
70
class ImportDecl ;
69
71
class IRGenOptions ;
70
72
class ModuleDecl ;
71
73
class NominalTypeDecl ;
72
74
class StructDecl ;
73
75
class SwiftLookupTable ;
74
76
class TypeDecl ;
77
+ class ValueDecl ;
75
78
class VisibleDeclConsumer ;
76
79
enum class SelectorSplitKind ;
77
80
@@ -261,6 +264,9 @@ class ClangImporter final : public ClangModuleLoader {
261
264
instantiateCXXClassTemplate (clang::ClassTemplateDecl *decl,
262
265
ArrayRef<clang::TemplateArgument> arguments) override ;
263
266
267
+ ConcreteDeclRef getCXXFunctionTemplateSpecialization (
268
+ SubstitutionMap subst, ValueDecl *decl) override ;
269
+
264
270
// / Just like Decl::getClangNode() except we look through to the 'Code'
265
271
// / enum of an error wrapper struct.
266
272
ClangNode getEffectiveClangNode (const Decl *decl) const ;
You can’t perform that action at this time.
0 commit comments