struct UserDefinedConversionSequence

Declaration

struct UserDefinedConversionSequence { /* full declaration omitted */ };

Description

UserDefinedConversionSequence - Represents a user-defined conversion sequence (C++ 13.3.3.1.2).

Declared at: clang/include/clang/Sema/Overload.h:373

Member Variables

public clang::StandardConversionSequence Before
C++11 13.3.3.1.2p1: If the user-defined conversion is specified by a constructor (12.3.1), the initial standard conversion sequence converts the source type to the type required by the argument of the constructor. If the user-defined conversion is specified by a conversion function (12.3.2), the initial standard conversion sequence converts the source type to the implicit object parameter of the conversion function.
public bool EllipsisConversion
EllipsisConversion - When this is true, it means user-defined conversion sequence starts with a ... (ellipsis) conversion, instead of a standard conversion. In this case, 'Before' field must be ignored.
public bool HadMultipleCandidates
HadMultipleCandidates - When this is true, it means that the conversion function was resolved from an overloaded set having size greater than 1.
public clang::StandardConversionSequence After
After - Represents the standard conversion that occurs after the actual user-defined conversion.
public clang::FunctionDecl* ConversionFunction
ConversionFunction - The function that will perform the user-defined conversion. Null if the conversion is an aggregate initialization from an initializer list.
public clang::DeclAccessPair FoundConversionFunction
The declaration that we found via name lookup, which might be the same as \c ConversionFunction or it might be a using declaration that refers to \c ConversionFunction.

Method Overview

  • public void dump() const

Methods

ΒΆvoid dump() const

Declared at: clang/include/clang/Sema/Overload.h:414