1*b3fc0fa8SRiver Riddle //===- Constraint.cpp -----------------------------------------------------===// 2*b3fc0fa8SRiver Riddle // 3*b3fc0fa8SRiver Riddle // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*b3fc0fa8SRiver Riddle // See https://llvm.org/LICENSE.txt for license information. 5*b3fc0fa8SRiver Riddle // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*b3fc0fa8SRiver Riddle // 7*b3fc0fa8SRiver Riddle //===----------------------------------------------------------------------===// 8*b3fc0fa8SRiver Riddle 9*b3fc0fa8SRiver Riddle #include "mlir/Tools/PDLL/ODS/Constraint.h" 10*b3fc0fa8SRiver Riddle 11*b3fc0fa8SRiver Riddle using namespace mlir; 12*b3fc0fa8SRiver Riddle using namespace mlir::pdll::ods; 13*b3fc0fa8SRiver Riddle 14*b3fc0fa8SRiver Riddle //===----------------------------------------------------------------------===// 15*b3fc0fa8SRiver Riddle // Constraint 16*b3fc0fa8SRiver Riddle //===----------------------------------------------------------------------===// 17*b3fc0fa8SRiver Riddle getDemangledName() const18*b3fc0fa8SRiver RiddleStringRef Constraint::getDemangledName() const { 19*b3fc0fa8SRiver Riddle StringRef demangledName = name; 20*b3fc0fa8SRiver Riddle 21*b3fc0fa8SRiver Riddle // Drop the "anonymous" suffix if present. 22*b3fc0fa8SRiver Riddle size_t anonymousSuffix = demangledName.find("(anonymous_"); 23*b3fc0fa8SRiver Riddle if (anonymousSuffix != StringRef::npos) 24*b3fc0fa8SRiver Riddle demangledName = demangledName.take_front(anonymousSuffix); 25*b3fc0fa8SRiver Riddle return demangledName; 26*b3fc0fa8SRiver Riddle } 27