| //===--- CSDiag.h - Constraint-based Type Checking ----*- C++ -*-===// |
| // |
| // This source file is part of the Swift.org open source project |
| // |
| // Copyright (c) 2017 Apple Inc. and the Swift project authors |
| // Licensed under Apache License v2.0 with Runtime Library Exception |
| // |
| // See https://swift.org/LICENSE.txt for license information |
| // See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors |
| // |
| //===----------------------------------------------------------------------===// |
| // |
| // This file provides shared utility methods for ConstraintSystem diagnosis. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| |
| #ifndef SWIFT_SEMA_CSDIAG_H |
| #define SWIFT_SEMA_CSDIAG_H |
| |
| #include "ConstraintSystem.h" |
| #include <string> |
| |
| namespace swift { |
| class Expr; |
| class Type; |
| class SourceLoc; |
| |
| std::string getTypeListString(Type type); |
| |
| /// Rewrite any type variables & archetypes in the specified type with |
| /// UnresolvedType. |
| Type replaceTypeParametersWithUnresolved(Type ty); |
| Type replaceTypeVariablesWithUnresolved(Type ty); |
| }; |
| |
| #endif /* SWIFT_SEMA_CSDIAG_H */ |