Files
swift-mirror/lib/Sema/CSDiag.h
Slava Pestov 91dffc9d44 Sema: Use AnyFunctionType::printParams() to print argument lists instead of printing a tuple type
Once the '@escaping' bit is removed from TupleTypeElt, it no longer makes
sense to print argument lists as if they were TupleTypes or ParenTypes,
since function types are '@escaping' by default inside tuples but not
in argument lists.

Instead, print ArrayRef<AnyFunctionType::Param> directly. For now this
introduces some awkward usages of AnyFunctionType::decomposeInput();
these will go away once the AST is changed to represent the argument list
as a list of expressions and not a single tuple expression.
2019-04-15 00:22:29 -04:00

36 lines
1.1 KiB
C++

//===--- 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;
/// Rewrite any type variables & archetypes in the specified type with
/// UnresolvedType.
Type replaceTypeParametersWithUnresolved(Type ty);
Type replaceTypeVariablesWithUnresolved(Type ty);
};
#endif /* SWIFT_SEMA_CSDIAG_H */