clang 20.0.0git
clang::BinaryOperator Member List

This is the complete list of members for clang::BinaryOperator, including all inherited members.

addStmtClass(const StmtClass s)clang::Stmtstatic
ArrayOrMatrixSubscriptExprBitsclang::Stmt
AttributedStmtBitsclang::Stmt
BinaryOperator(const ASTContext &Ctx, Expr *lhs, Expr *rhs, Opcode opc, QualType ResTy, ExprValueKind VK, ExprObjectKind OK, SourceLocation opLoc, FPOptionsOverride FPFeatures)clang::BinaryOperatorprotected
BinaryOperator(EmptyShell Empty)clang::BinaryOperatorinlineexplicitprotected
BinaryOperator(const ASTContext &Ctx, Expr *lhs, Expr *rhs, Opcode opc, QualType ResTy, ExprValueKind VK, ExprObjectKind OK, SourceLocation opLoc, FPOptionsOverride FPFeatures, bool dead2)clang::BinaryOperatorprotected
BinaryOperator(StmtClass SC, EmptyShell Empty)clang::BinaryOperatorinlineprotected
BinaryOperatorBitsclang::Stmt
BreakStmtBitsclang::Stmt
CallExprBitsclang::Stmt
CastExprBitsclang::Stmt
CharacterLiteralBitsclang::Stmt
child_begin()clang::Stmtinline
child_begin() constclang::Stmtinline
child_end()clang::Stmtinline
child_end() constclang::Stmtinline
child_iterator typedefclang::Stmt
child_range typedefclang::Stmt
children()clang::BinaryOperatorinline
children() constclang::BinaryOperatorinline
Classify(ASTContext &Ctx) constclang::Exprinline
ClassifyLValue(ASTContext &Ctx) constclang::Expr
ClassifyModifiable(ASTContext &Ctx, SourceLocation &Loc) constclang::Exprinline
classof(const Stmt *S)clang::BinaryOperatorinlinestatic
CoawaitBitsclang::Stmt
CompoundStmtBitsclang::Stmt
const_child_iterator typedefclang::Stmt
const_child_range typedefclang::Stmt
ConstantExprBitsclang::Stmt
ConstantExprKind enum nameclang::Expr
ConstCastIterator typedefclang::Stmtprotected
ConstExprIterator typedefclang::Stmtprotected
containsErrors() constclang::Exprinline
containsUnexpandedParameterPack() constclang::Exprinline
ContinueStmtBitsclang::Stmt
Create(const ASTContext &C, Expr *lhs, Expr *rhs, Opcode opc, QualType ResTy, ExprValueKind VK, ExprObjectKind OK, SourceLocation opLoc, FPOptionsOverride FPFeatures)clang::BinaryOperatorstatic
CreateEmpty(const ASTContext &C, bool hasFPFeatures)clang::BinaryOperatorstatic
CXXBoolLiteralExprBitsclang::Stmt
CXXConstructExprBitsclang::Stmt
CXXDefaultArgExprBitsclang::Stmt
CXXDefaultInitExprBitsclang::Stmt
CXXDeleteExprBitsclang::Stmt
CXXDependentScopeMemberExprBitsclang::Stmt
CXXNewExprBitsclang::Stmt
CXXNoexceptExprBitsclang::Stmt
CXXNullPtrLiteralExprBitsclang::Stmt
CXXOperatorCallExprBitsclang::Stmt
CXXRewrittenBinaryOperatorBitsclang::Stmt
CXXScalarValueInitExprBitsclang::Stmt
CXXThisExprBitsclang::Stmt
CXXThrowExprBitsclang::Stmt
CXXUnresolvedConstructExprBitsclang::Stmt
DeclRefExprBitsclang::Stmt
DependentScopeDeclRefExprBitsclang::Stmt
determineLikelihoodConflict(const Stmt *Then, const Stmt *Else)clang::Stmtstatic
DoStmtBitsclang::Stmt
dump() constclang::Stmt
dump(raw_ostream &OS, const ASTContext &Context) constclang::Stmt
dumpColor() constclang::Stmt
dumpPretty(const ASTContext &Context) constclang::Stmt
EnableStatistics()clang::Stmtstatic
EvaluateAsBooleanCondition(bool &Result, const ASTContext &Ctx, bool InConstantContext=false) constclang::Expr
EvaluateAsConstantExpr(EvalResult &Result, const ASTContext &Ctx, ConstantExprKind Kind=ConstantExprKind::Normal) constclang::Expr
EvaluateAsFixedPoint(EvalResult &Result, const ASTContext &Ctx, SideEffectsKind AllowSideEffects=SE_NoSideEffects, bool InConstantContext=false) constclang::Expr
EvaluateAsFloat(llvm::APFloat &Result, const ASTContext &Ctx, SideEffectsKind AllowSideEffects=SE_NoSideEffects, bool InConstantContext=false) constclang::Expr
EvaluateAsInitializer(APValue &Result, const ASTContext &Ctx, const VarDecl *VD, SmallVectorImpl< PartialDiagnosticAt > &Notes, bool IsConstantInitializer) constclang::Expr
EvaluateAsInt(EvalResult &Result, const ASTContext &Ctx, SideEffectsKind AllowSideEffects=SE_NoSideEffects, bool InConstantContext=false) constclang::Expr
EvaluateAsLValue(EvalResult &Result, const ASTContext &Ctx, bool InConstantContext=false) constclang::Expr
EvaluateAsRValue(EvalResult &Result, const ASTContext &Ctx, bool InConstantContext=false) constclang::Expr
EvaluateCharRangeAsString(std::string &Result, const Expr *SizeExpression, const Expr *PtrExpression, ASTContext &Ctx, EvalResult &Status) constclang::Expr
EvaluateForOverflow(const ASTContext &Ctx) constclang::Expr
EvaluateKnownConstInt(const ASTContext &Ctx, SmallVectorImpl< PartialDiagnosticAt > *Diag=nullptr) constclang::Expr
EvaluateKnownConstIntCheckOverflow(const ASTContext &Ctx, SmallVectorImpl< PartialDiagnosticAt > *Diag=nullptr) constclang::Expr
EvaluateWithSubstitution(APValue &Value, ASTContext &Ctx, const FunctionDecl *Callee, ArrayRef< const Expr * > Args, const Expr *This=nullptr) constclang::Expr
Expr()=deleteclang::Expr
Expr(const Expr &)=deleteclang::Expr
Expr(Expr &&)=deleteclang::Expr
Expr(StmtClass SC, QualType T, ExprValueKind VK, ExprObjectKind OK)clang::Exprinlineprotected
Expr(StmtClass SC, EmptyShell)clang::Exprinlineexplicitprotected
ExprBitsclang::Stmt
ExprIterator typedefclang::Stmtprotected
ExprWithCleanupsBitsclang::Stmt
findBoundMemberType(const Expr *expr)clang::Exprstatic
FloatingLiteralBitsclang::Stmt
ForStmtBitsclang::Stmt
GenericSelectionExprBitsclang::Stmt
getAsBuiltinConstantDeclRef(const ASTContext &Context) constclang::Expr
getBeginLoc() const LLVM_READONLYclang::BinaryOperatorinline
getBestDynamicClassType() constclang::Expr
getBestDynamicClassTypeExpr() constclang::Expr
getDependence() constclang::Exprinline
getEndLoc() const LLVM_READONLYclang::BinaryOperatorinline
getEnumCoercedType(const ASTContext &Ctx) constclang::Expr
getEnumConstantDecl()clang::Expr
getEnumConstantDecl() constclang::Exprinline
getExprLoc() constclang::BinaryOperatorinline
getExprStmt() constclang::ValueStmt
getExprStmt()clang::ValueStmtinline
getFPFeatures() constclang::BinaryOperatorinline
getFPFeaturesInEffect(const LangOptions &LO) constclang::BinaryOperatorinline
getID(const ASTContext &Context) constclang::Stmt
getIntegerConstantExpr(const ASTContext &Ctx, SourceLocation *Loc=nullptr) constclang::Expr
getLHS() constclang::BinaryOperatorinline
getLikelihood(ArrayRef< const Attr * > Attrs)clang::Stmtstatic
getLikelihood(const Stmt *S)clang::Stmtstatic
getLikelihood(const Stmt *Then, const Stmt *Else)clang::Stmtstatic
getLikelihoodAttr(const Stmt *S)clang::Stmtstatic
getObjCProperty() constclang::Expr
getObjectKind() constclang::Exprinline
getOpcode() constclang::BinaryOperatorinline
getOpcodeStr(Opcode Op)clang::BinaryOperatorstatic
getOpcodeStr() constclang::BinaryOperatorinline
getOperatorLoc() constclang::BinaryOperatorinline
getOpForCompoundAssignment(Opcode Opc)clang::BinaryOperatorinlinestatic
getOverloadedOpcode(OverloadedOperatorKind OO)clang::BinaryOperatorstatic
getOverloadedOperator(Opcode Opc)clang::BinaryOperatorstatic
getReferencedDeclOfCallee()clang::Expr
getReferencedDeclOfCallee() constclang::Exprinline
getRHS() constclang::BinaryOperatorinline
getSourceBitField()clang::Expr
getSourceBitField() constclang::Exprinline
getSourceRange() const LLVM_READONLYclang::Stmt
getStmtClass() constclang::Stmtinline
getStmtClassName() constclang::Stmt
getStoredFPFeatures() constclang::BinaryOperatorinline
getStoredFPFeaturesOrDefault() constclang::BinaryOperatorinline
getTrailingFPFeatures()clang::BinaryOperatorinlineprotected
getTrailingFPFeatures() constclang::BinaryOperatorinlineprotected
getType() constclang::Exprinline
getValueKind() constclang::Exprinline
getValueKindForType(QualType T)clang::Exprinlinestatic
GotoStmtBitsclang::Stmt
hasAnyTypeDependentArguments(ArrayRef< Expr * > Exprs)clang::Exprstatic
hasExcludedOverflowPattern() constclang::BinaryOperatorinline
hasNonTrivialCall(const ASTContext &Ctx) constclang::Expr
hasPlaceholderType() constclang::Exprinline
hasPlaceholderType(BuiltinType::Kind K) constclang::Exprinline
HasSideEffects(const ASTContext &Ctx, bool IncludePossibleEffects=true) constclang::Expr
hasStoredFPFeatures() constclang::BinaryOperatorinline
IfStmtBitsclang::Stmt
IgnoreCasts() LLVM_READONLYclang::Expr
IgnoreCasts() constclang::Exprinline
IgnoreContainers(bool IgnoreCaptured=false)clang::Stmt
IgnoreContainers(bool IgnoreCaptured=false) constclang::Stmtinline
IgnoreConversionOperatorSingleStep() LLVM_READONLYclang::Expr
IgnoreConversionOperatorSingleStep() constclang::Exprinline
IgnoreImpCasts() LLVM_READONLYclang::Expr
IgnoreImpCasts() constclang::Exprinline
IgnoreImplicit() LLVM_READONLYclang::Expr
IgnoreImplicit() constclang::Exprinline
IgnoreImplicitAsWritten() LLVM_READONLYclang::Expr
IgnoreImplicitAsWritten() constclang::Exprinline
IgnoreParenBaseCasts() LLVM_READONLYclang::Expr
IgnoreParenBaseCasts() constclang::Exprinline
IgnoreParenCasts() LLVM_READONLYclang::Expr
IgnoreParenCasts() constclang::Exprinline
IgnoreParenImpCasts() LLVM_READONLYclang::Expr
IgnoreParenImpCasts() constclang::Exprinline
IgnoreParenLValueCasts() LLVM_READONLYclang::Expr
IgnoreParenLValueCasts() constclang::Exprinline
IgnoreParenNoopCasts(const ASTContext &Ctx) LLVM_READONLYclang::Expr
IgnoreParenNoopCasts(const ASTContext &Ctx) constclang::Exprinline
IgnoreParens() LLVM_READONLYclang::Expr
IgnoreParens() constclang::Exprinline
IgnoreUnlessSpelledInSource()clang::Expr
IgnoreUnlessSpelledInSource() constclang::Exprinline
InitListExprBitsclang::Stmt
isAdditiveOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isAdditiveOp() constclang::BinaryOperatorinline
isAssignmentOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isAssignmentOp() constclang::BinaryOperatorinline
isBitwiseOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isBitwiseOp() constclang::BinaryOperatorinline
isBoundMemberFunction(ASTContext &Ctx) constclang::Expr
isCommaOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isCommaOp() constclang::BinaryOperatorinline
isComparisonOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isComparisonOp() constclang::BinaryOperatorinline
isCompoundAssignmentOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isCompoundAssignmentOp() constclang::BinaryOperatorinline
isConstantInitializer(ASTContext &Ctx, bool ForRef, const Expr **Culprit=nullptr) constclang::Expr
isCXX11ConstantExpr(const ASTContext &Ctx, APValue *Result=nullptr, SourceLocation *Loc=nullptr) constclang::Expr
isCXX98IntegralConstantExpr(const ASTContext &Ctx) constclang::Expr
isDefaultArgument() constclang::Expr
isEqualityOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isEqualityOp() constclang::BinaryOperatorinline
isEvaluatable(const ASTContext &Ctx, SideEffectsKind AllowSideEffects=SE_NoSideEffects) constclang::Expr
isFEnvAccessOn(const LangOptions &LO) constclang::BinaryOperatorinline
isFlexibleArrayMemberLike(ASTContext &Context, LangOptions::StrictFlexArraysLevelKind StrictFlexArraysLevel, bool IgnoreTemplateOrMacroSubstitution=false) constclang::Expr
isFPContractableWithinStatement(const LangOptions &LO) constclang::BinaryOperatorinline
isGLValue() constclang::Exprinline
isImplicitCXXThis() constclang::Expr
isInstantiationDependent() constclang::Exprinline
isIntegerConstantExpr(const ASTContext &Ctx, SourceLocation *Loc=nullptr) constclang::Expr
isKnownToHaveBooleanValue(bool Semantic=true) constclang::Expr
isLogicalOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isLogicalOp() constclang::BinaryOperatorinline
isLValue() constclang::Exprinline
isModifiableLvalue(ASTContext &Ctx, SourceLocation *Loc=nullptr) constclang::Expr
isModifiableLvalueResult enum nameclang::Expr
isMultiplicativeOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isMultiplicativeOp() constclang::BinaryOperatorinline
isNullPointerArithmeticExtension(ASTContext &Ctx, Opcode Opc, const Expr *LHS, const Expr *RHS)clang::BinaryOperatorstatic
isNullPointerConstant(ASTContext &Ctx, NullPointerConstantValueDependence NPC) constclang::Expr
isOBJCGCCandidate(ASTContext &Ctx) constclang::Expr
isObjCSelfExpr() constclang::Expr
isOrdinaryOrBitFieldObject() constclang::Exprinline
isPotentialConstantExpr(const FunctionDecl *FD, SmallVectorImpl< PartialDiagnosticAt > &Diags)clang::Exprstatic
isPotentialConstantExprUnevaluated(Expr *E, const FunctionDecl *FD, SmallVectorImpl< PartialDiagnosticAt > &Diags)clang::Exprstatic
isPRValue() constclang::Exprinline
isPtrMemOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isPtrMemOp() constclang::BinaryOperatorinline
isReadIfDiscardedInCPlusPlus11() constclang::Expr
isRelationalOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isRelationalOp() constclang::BinaryOperatorinline
isSameComparisonOperand(const Expr *E1, const Expr *E2)clang::Exprstatic
isShiftAssignOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isShiftAssignOp() constclang::BinaryOperatorinline
isShiftOp(Opcode Opc)clang::BinaryOperatorinlinestatic
isShiftOp() constclang::BinaryOperatorinline
isTemporaryObject(ASTContext &Ctx, const CXXRecordDecl *TempTy) constclang::Expr
isTypeDependent() constclang::Exprinline
isUnusedResultAWarning(const Expr *&WarnExpr, SourceLocation &Loc, SourceRange &R1, SourceRange &R2, ASTContext &Ctx) constclang::Expr
isValueDependent() constclang::Exprinline
isXValue() constclang::Exprinline
LabelStmtBitsclang::Stmt
LambdaExprBitsclang::Stmt
LH_Likely enum valueclang::Stmt
LH_None enum valueclang::Stmt
LH_Unlikely enum valueclang::Stmt
Likelihood enum nameclang::Stmt
LV_ArrayTemporary enum valueclang::Expr
LV_ClassTemporary enum valueclang::Expr
LV_DuplicateVectorComponents enum valueclang::Expr
LV_IncompleteVoidType enum valueclang::Expr
LV_InvalidExpression enum valueclang::Expr
LV_InvalidMessageExpression enum valueclang::Expr
LV_MemberFunction enum valueclang::Expr
LV_NotObjectType enum valueclang::Expr
LV_SubObjCPropertySetting enum valueclang::Expr
LV_Valid enum valueclang::Expr
LValueClassification enum nameclang::Expr
MemberExprBitsclang::Stmt
MLV_ArrayTemporary enum valueclang::Expr
MLV_ArrayType enum valueclang::Expr
MLV_ClassTemporary enum valueclang::Expr
MLV_ConstAddrSpace enum valueclang::Expr
MLV_ConstQualified enum valueclang::Expr
MLV_ConstQualifiedField enum valueclang::Expr
MLV_DuplicateVectorComponents enum valueclang::Expr
MLV_IncompleteType enum valueclang::Expr
MLV_IncompleteVoidType enum valueclang::Expr
MLV_InvalidExpression enum valueclang::Expr
MLV_InvalidMessageExpression enum valueclang::Expr
MLV_LValueCast enum valueclang::Expr
MLV_MemberFunction enum valueclang::Expr
MLV_NoSetterProperty enum valueclang::Expr
MLV_NotObjectType enum valueclang::Expr
MLV_SubObjCPropertySetting enum valueclang::Expr
MLV_Valid enum valueclang::Expr
negateComparisonOp(Opcode Opc)clang::BinaryOperatorinlinestatic
NoStmtClass enum valueclang::Stmt
NPC_NeverValueDependent enum valueclang::Expr
NPC_ValueDependentIsNotNull enum valueclang::Expr
NPC_ValueDependentIsNull enum valueclang::Expr
NPCK_CXX11_nullptr enum valueclang::Expr
NPCK_GNUNull enum valueclang::Expr
NPCK_NotNull enum valueclang::Expr
NPCK_ZeroExpression enum valueclang::Expr
NPCK_ZeroLiteral enum valueclang::Expr
NullPointerConstantKind enum nameclang::Expr
NullPointerConstantValueDependence enum nameclang::Expr
NullStmtBitsclang::Stmt
NumCallExprBits enum valueclang::Stmtprotected
NumExprBits enum valueclang::Stmtprotected
NumOverloadExprBits enum valueclang::Stmtprotected
NumStmtBits enum valueclang::Stmtprotected
ObjCIndirectCopyRestoreExprBitsclang::Stmt
offsetOfTrailingStorage() constclang::BinaryOperatorinlineprotected
OpaqueValueExprBitsclang::Stmt
Opcode typedefclang::BinaryOperator
operator delete(void *data) noexceptclang::Stmtinlineprotected
operator delete(void *, const ASTContext &, unsigned) noexceptclang::Stmtinline
operator delete(void *, const ASTContext *, unsigned) noexceptclang::Stmtinline
operator delete(void *, size_t) noexceptclang::Stmtinline
operator delete(void *, void *) noexceptclang::Stmtinline
operator new(size_t bytes) noexceptclang::Stmtinlineprotected
operator new(size_t bytes, const ASTContext &C, unsigned alignment=8)clang::Stmt
operator new(size_t bytes, const ASTContext *C, unsigned alignment=8)clang::Stmtinline
operator new(size_t bytes, void *mem) noexceptclang::Stmtinline
operator=(const Expr &)=deleteclang::Expr
operator=(Expr &&)=deleteclang::Expr
clang::ValueStmt::operator=(const Stmt &)=deleteclang::Stmt
clang::ValueStmt::operator=(Stmt &&)=deleteclang::Stmt
OverloadExprBitsclang::Stmt
ParenListExprBitsclang::Stmt
PredefinedExprBitsclang::Stmt
printJson(raw_ostream &Out, PrinterHelper *Helper, const PrintingPolicy &Policy, bool AddQuotes) constclang::Stmt
printPretty(raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, StringRef NewlineSymbol="\n", const ASTContext *Context=nullptr) constclang::Stmt
printPrettyControlled(raw_ostream &OS, PrinterHelper *Helper, const PrintingPolicy &Policy, unsigned Indentation=0, StringRef NewlineSymbol="\n", const ASTContext *Context=nullptr) constclang::Stmt
PrintStats()clang::Stmtstatic
ProcessODRHash(llvm::FoldingSetNodeID &ID, ODRHash &Hash) constclang::Stmt
Profile(llvm::FoldingSetNodeID &ID, const ASTContext &Context, bool Canonical, bool ProfileLambdaExpr=false) constclang::Stmt
PseudoObjectExprBitsclang::Stmt
refersToBitField() constclang::Exprinline
refersToGlobalRegisterVar() constclang::Expr
refersToMatrixElement() constclang::Exprinline
refersToVectorElement() constclang::Expr
RequiresExprBitsclang::Stmt
ReturnStmtBitsclang::Stmt
reverseComparisonOp(Opcode Opc)clang::BinaryOperatorinlinestatic
SE_AllowSideEffects enum valueclang::Expr
SE_AllowUndefinedBehavior enum valueclang::Expr
SE_NoSideEffects enum valueclang::Expr
setDependence(ExprDependence Deps)clang::Exprinlineprotected
setExcludedOverflowPattern(bool B)clang::BinaryOperatorinline
setHasStoredFPFeatures(bool B)clang::BinaryOperatorinline
setLHS(Expr *E)clang::BinaryOperatorinline
setObjectKind(ExprObjectKind Cat)clang::Exprinline
setOpcode(Opcode Opc)clang::BinaryOperatorinline
setOperatorLoc(SourceLocation L)clang::BinaryOperatorinline
setRHS(Expr *E)clang::BinaryOperatorinline
setStoredFPFeatures(FPOptionsOverride F)clang::BinaryOperatorinline
setType(QualType t)clang::Exprinline
setValueKind(ExprValueKind Cat)clang::Exprinline
SideEffectsKind enum nameclang::Expr
sizeOfTrailingObjects(bool HasFPFeatures)clang::BinaryOperatorinlineprotectedstatic
skipRValueSubobjectAdjustments(SmallVectorImpl< const Expr * > &CommaLHS, SmallVectorImpl< SubobjectAdjustment > &Adjustments) constclang::Expr
skipRValueSubobjectAdjustments() constclang::Exprinline
SourceLocExprBitsclang::Stmt
Stmt(StmtClass SC, EmptyShell)clang::ValueStmtinlineexplicitprotected
Stmt()=deleteclang::ValueStmtprotected
Stmt(const Stmt &)=deleteclang::ValueStmtprotected
Stmt(Stmt &&)=deleteclang::ValueStmtprotected
Stmt(StmtClass SC)clang::ValueStmtinlineprotected
StmtBitsclang::Stmt
StmtClass enum nameclang::Stmt
StmtExprBitsclang::Stmt
StringLiteralBitsclang::Stmt
stripLabelLikeStatements() constclang::Stmt
stripLabelLikeStatements()clang::Stmtinline
SubstNonTypeTemplateParmExprBitsclang::Stmt
SwitchCaseBitsclang::Stmt
SwitchStmtBitsclang::Stmt
tryEvaluateObjectSize(uint64_t &Result, ASTContext &Ctx, unsigned Type) constclang::Expr
tryEvaluateString(ASTContext &Ctx) constclang::Expr
tryEvaluateStrLen(uint64_t &Result, ASTContext &Ctx) constclang::Expr
TypeTraitExprBitsclang::Stmt
UnaryExprOrTypeTraitExprBitsclang::Stmt
UnaryOperatorBitsclang::Stmt
UnresolvedLookupExprBitsclang::Stmt
UnresolvedMemberExprBitsclang::Stmt
viewAST() constclang::Stmt
WhileStmtBitsclang::Stmt