Lines Matching full:bool
74 bool emit(Compiler<Emitter> *Ctx, const Expr *E) const;
86 std::optional<bool> S = std::nullopt;
88 VarCreationState(bool b) : S(b) {} in VarCreationState()
91 operator bool() const { return S && *S; }
92 bool notCreated() const { return !S; } in notCreated()
97 class Compiler : public ConstStmtVisitor<Compiler<Emitter>, bool>,
118 bool VisitCastExpr(const CastExpr *E);
119 bool VisitIntegerLiteral(const IntegerLiteral *E);
120 bool VisitFloatingLiteral(const FloatingLiteral *E);
121 bool VisitImaginaryLiteral(const ImaginaryLiteral *E);
122 bool VisitParenExpr(const ParenExpr *E);
123 bool VisitBinaryOperator(const BinaryOperator *E);
124 bool VisitLogicalBinOp(const BinaryOperator *E);
125 bool VisitPointerArithBinOp(const BinaryOperator *E);
126 bool VisitComplexBinOp(const BinaryOperator *E);
127 bool VisitCXXDefaultArgExpr(const CXXDefaultArgExpr *E);
128 bool VisitCallExpr(const CallExpr *E);
129 bool VisitBuiltinCallExpr(const CallExpr *E);
130 bool VisitCXXDefaultInitExpr(const CXXDefaultInitExpr *E);
131 bool VisitCXXBoolLiteralExpr(const CXXBoolLiteralExpr *E);
132 bool VisitCXXNullPtrLiteralExpr(const CXXNullPtrLiteralExpr *E);
133 bool VisitGNUNullExpr(const GNUNullExpr *E);
134 bool VisitCXXThisExpr(const CXXThisExpr *E);
135 bool VisitUnaryOperator(const UnaryOperator *E);
136 bool VisitComplexUnaryOperator(const UnaryOperator *E);
137 bool VisitDeclRefExpr(const DeclRefExpr *E);
138 bool VisitImplicitValueInitExpr(const ImplicitValueInitExpr *E);
139 bool VisitSubstNonTypeTemplateParmExpr(const SubstNonTypeTemplateParmExpr *E);
140 bool VisitArraySubscriptExpr(const ArraySubscriptExpr *E);
141 bool VisitInitListExpr(const InitListExpr *E);
142 bool VisitCXXParenListInitExpr(const CXXParenListInitExpr *E);
143 bool VisitConstantExpr(const ConstantExpr *E);
144 bool VisitUnaryExprOrTypeTraitExpr(const UnaryExprOrTypeTraitExpr *E);
145 bool VisitMemberExpr(const MemberExpr *E);
146 bool VisitArrayInitIndexExpr(const ArrayInitIndexExpr *E);
147 bool VisitArrayInitLoopExpr(const ArrayInitLoopExpr *E);
148 bool VisitOpaqueValueExpr(const OpaqueValueExpr *E);
149 bool VisitAbstractConditionalOperator(const AbstractConditionalOperator *E);
150 bool VisitStringLiteral(const StringLiteral *E);
151 bool VisitObjCStringLiteral(const ObjCStringLiteral *E);
152 bool VisitObjCEncodeExpr(const ObjCEncodeExpr *E);
153 bool VisitSYCLUniqueStableNameExpr(const SYCLUniqueStableNameExpr *E);
154 bool VisitCharacterLiteral(const CharacterLiteral *E);
155 bool VisitCompoundAssignOperator(const CompoundAssignOperator *E);
156 bool VisitFloatCompoundAssignOperator(const CompoundAssignOperator *E);
157 bool VisitPointerCompoundAssignOperator(const CompoundAssignOperator *E);
158 bool VisitExprWithCleanups(const ExprWithCleanups *E);
159 bool VisitMaterializeTemporaryExpr(const MaterializeTemporaryExpr *E);
160 bool VisitCXXBindTemporaryExpr(const CXXBindTemporaryExpr *E);
161 bool VisitCompoundLiteralExpr(const CompoundLiteralExpr *E);
162 bool VisitTypeTraitExpr(const TypeTraitExpr *E);
163 bool VisitArrayTypeTraitExpr(const ArrayTypeTraitExpr *E);
164 bool VisitLambdaExpr(const LambdaExpr *E);
165 bool VisitPredefinedExpr(const PredefinedExpr *E);
166 bool VisitCXXThrowExpr(const CXXThrowExpr *E);
167 bool VisitCXXReinterpretCastExpr(const CXXReinterpretCastExpr *E);
168 bool VisitCXXNoexceptExpr(const CXXNoexceptExpr *E);
169 bool VisitCXXConstructExpr(const CXXConstructExpr *E);
170 bool VisitSourceLocExpr(const SourceLocExpr *E);
171 bool VisitOffsetOfExpr(const OffsetOfExpr *E);
172 bool VisitCXXScalarValueInitExpr(const CXXScalarValueInitExpr *E);
173 bool VisitSizeOfPackExpr(const SizeOfPackExpr *E);
174 bool VisitGenericSelectionExpr(const GenericSelectionExpr *E);
175 bool VisitChooseExpr(const ChooseExpr *E);
176 bool VisitEmbedExpr(const EmbedExpr *E);
177 bool VisitObjCBoolLiteralExpr(const ObjCBoolLiteralExpr *E);
178 bool VisitCXXInheritedCtorInitExpr(const CXXInheritedCtorInitExpr *E);
179 bool VisitExpressionTraitExpr(const ExpressionTraitExpr *E);
180 bool VisitCXXUuidofExpr(const CXXUuidofExpr *E);
181 bool VisitRequiresExpr(const RequiresExpr *E);
182 bool VisitConceptSpecializationExpr(const ConceptSpecializationExpr *E);
183 bool VisitCXXRewrittenBinaryOperator(const CXXRewrittenBinaryOperator *E);
184 bool VisitPseudoObjectExpr(const PseudoObjectExpr *E);
185 bool VisitPackIndexingExpr(const PackIndexingExpr *E);
186 bool VisitRecoveryExpr(const RecoveryExpr *E);
187 bool VisitAddrLabelExpr(const AddrLabelExpr *E);
188 bool VisitConvertVectorExpr(const ConvertVectorExpr *E);
189 bool VisitShuffleVectorExpr(const ShuffleVectorExpr *E);
190 bool VisitExtVectorElementExpr(const ExtVectorElementExpr *E);
191 bool VisitObjCBoxedExpr(const ObjCBoxedExpr *E);
192 bool VisitCXXStdInitializerListExpr(const CXXStdInitializerListExpr *E);
193 bool VisitStmtExpr(const StmtExpr *E);
194 bool VisitCXXNewExpr(const CXXNewExpr *E);
195 bool VisitCXXDeleteExpr(const CXXDeleteExpr *E);
198 bool visitCompoundStmt(const CompoundStmt *S);
199 bool visitLoopBody(const Stmt *S);
200 bool visitDeclStmt(const DeclStmt *DS);
201 bool visitReturnStmt(const ReturnStmt *RS);
202 bool visitIfStmt(const IfStmt *IS);
203 bool visitWhileStmt(const WhileStmt *S);
204 bool visitDoStmt(const DoStmt *S);
205 bool visitForStmt(const ForStmt *S);
206 bool visitCXXForRangeStmt(const CXXForRangeStmt *S);
207 bool visitBreakStmt(const BreakStmt *S);
208 bool visitContinueStmt(const ContinueStmt *S);
209 bool visitSwitchStmt(const SwitchStmt *S);
210 bool visitCaseStmt(const CaseStmt *S);
211 bool visitDefaultStmt(const DefaultStmt *S);
212 bool visitAttributedStmt(const AttributedStmt *S);
213 bool visitCXXTryStmt(const CXXTryStmt *S);
216 bool visitStmt(const Stmt *S);
217 bool visitExpr(const Expr *E) override;
218 bool visitFunc(const FunctionDecl *F) override;
220 bool visitDeclAndReturn(const VarDecl *VD, bool ConstantContext) override;
261 bool visit(const Expr *E);
266 bool visitInitializer(const Expr *E);
268 bool discard(const Expr *E);
271 bool delegate(const Expr *E);
273 VarCreationState visitVarDecl(const VarDecl *VD, bool Toplevel = false);
276 bool visitAPValue(const APValue &Val, PrimType ValType, const Expr *E);
277 bool visitAPValueInitializer(const APValue &Val, const Expr *E);
279 bool visitDeclRef(const ValueDecl *D, const Expr *E);
282 bool visitBool(const Expr *E);
284 bool visitInitList(ArrayRef<const Expr *> Inits, const Expr *ArrayFiller,
286 bool visitArrayElemInit(unsigned ElemIndex, const Expr *Init);
289 unsigned allocateLocalPrimitive(DeclTy &&Decl, PrimType Ty, bool IsConst,
290 bool IsExtended = false);
313 bool visitZeroInitializer(PrimType T, QualType QT, const Expr *E);
314 bool visitZeroRecordInitializer(const Record *R, const Expr *E);
317 bool emitConst(const llvm::APSInt &Value, PrimType Ty, const Expr *E);
318 bool emitConst(const llvm::APSInt &Value, const Expr *E);
319 bool emitConst(const llvm::APInt &Value, const Expr *E) { in emitConst()
324 template <typename T> bool emitConst(T Value, PrimType Ty, const Expr *E);
325 template <typename T> bool emitConst(T Value, const Expr *E);
336 bool emitPrimCast(PrimType FromT, PrimType ToT, QualType ToQT, const Expr *E);
345 bool emitComplexReal(const Expr *SubExpr);
346 bool emitComplexBoolCast(const Expr *E);
347 bool emitComplexComparison(const Expr *LHS, const Expr *RHS,
350 bool emitRecordDestruction(const Record *R);
351 bool emitDestruction(const Descriptor *Desc);
354 bool emitLambdaStaticInvokerBody(const CXXMethodDecl *MD);
373 bool DiscardResult = false;
375 bool InStmtExpr = false;
379 bool Initializing = false;
383 bool InitStackActive = false;
386 bool GlobalDecl = false;
415 void add(const Scope::Local &Local, bool IsExtended) { in add()
451 virtual bool emitDestructors() { return true; } in emitDestructors()
481 bool destroyLocals() { in destroyLocals()
485 bool Success = this->emitDestructors(); in destroyLocals()
501 bool emitDestructors() override { in emitDestructors()
602 bool Enabled = false;
619 InitStackScope(Compiler<Emitter> *Ctx, bool Active) in InitStackScope()
628 bool OldValue;