Lines Matching full:gadget

458 /// Gadget is an individual operation in the code that may be of interest to
461 /// Discovery of a gadget in the code corresponds to claiming that we understand
466 class Gadget { class
469 #define GADGET(x) x, macro
478 Gadget(Kind K) : K(K) {} in Gadget() function in __anon8edba8be0511::Gadget
485 #define GADGET(x) \ in getDebugName() macro
490 llvm_unreachable("Unhandled Gadget::Kind enum"); in getDebugName()
499 /// Returns the list of pointer-type variables on which this gadget performs
501 /// of all DeclRefExprs in the gadget's AST!
504 virtual ~Gadget() = default;
512 class WarningGadget : public Gadget {
514 WarningGadget(Kind K) : Gadget(K) {} in WarningGadget()
516 static bool classof(const Gadget *G) { return G->isWarningGadget(); } in classof()
528 class FixableGadget : public Gadget {
530 FixableGadget(Kind K) : Gadget(K) {} in FixableGadget()
532 static bool classof(const Gadget *G) { return !G->isWarningGadget(); } in classof()
535 /// Returns a fixit that would fix the current gadget according to
570 static bool classof(const Gadget *G) { in classof()
610 static bool classof(const Gadget *G) { in classof()
649 static bool classof(const Gadget *G) { in classof()
700 static bool classof(const Gadget *G) { in classof()
749 static bool classof(const Gadget *G) { in classof()
798 static bool classof(const Gadget *G) { in classof()
846 static bool classof(const Gadget *G) { in classof()
895 static bool classof(const Gadget *G) { in classof()
937 static bool classof(const Gadget *G) { in classof()
969 static bool classof(const Gadget *G) { in classof()
993 // Warning gadget for unsafe invocation of span::data method.
1006 static bool classof(const Gadget *G) { in classof()
1044 static bool classof(const Gadget *G) { in classof()
1071 // Fixable gadget to handle stand alone pointers of the form `UPC(DRE)` in the
1072 // unspecified pointer context (isInUnspecifiedPointerContext). The gadget emits
1086 static bool classof(const Gadget *G) { in classof()
1119 static bool classof(const Gadget *G) { in classof()
1160 static bool classof(const Gadget *G) { in classof()
1267 static bool classof(const Gadget *G) { in classof()
1310 static bool classof(const Gadget *G) { in classof()
1399 // In debug mode, assert that we've found exactly one gadget. in findGadgets()
1423 FixableGadgets.push_back(std::make_unique<name##Gadget>(Result)); \ in findGadgets()
1429 WarningGadgets.push_back(std::make_unique<name##Gadget>(Result)); \ in findGadgets()
1446 // Add Gadget::matcher() for every gadget in the registry. in findGadgets()
1448 allOf(x ## Gadget::matcher().bind(#x), \ in findGadgets()
1451 allOf(x ## Gadget::matcher().bind(#x), \ in findGadgets()
1469 x ## Gadget::matcher().bind(#x), in findGadgets()
1625 // E. g. If an instance of this gadget is fixing variable on LHS then the in getFixits()
2920 ("gadget '" + F->getDebugName() + "' refused to produce a fix") in getFixIts()
3284 // `*p = 0` is a fixable gadget associated with a variable `p` that is neither in checkUnsafeBufferUsage()