Documentation for microsoft::quantum::ConstIntPattern

microsoft::quantum::ConstIntPattern

Inherits from microsoft::quantum::IOperandPrototype

Public Functions

Name
virtual bool match(Value * value, Captures & captures) const override
virtual Child copy() const override

Additional inherited members

Public Types inherited from microsoft::quantum::IOperandPrototype

Name
using llvm::Instruction Instruction
using std::string String
using llvm::Value Value
using std::shared_ptr< IOperandPrototype > Child
using std::vector< Child > Children
using std::unordered_map< std::string, Value * > Captures

Public Functions inherited from microsoft::quantum::IOperandPrototype

Name
IOperandPrototype() =default
virtual ~IOperandPrototype()
void addChild(Child const & child)
void captureAs(std::string capture_name)

Protected Functions inherited from microsoft::quantum::IOperandPrototype

Name
bool fail(Value * value, Captures & captures) const
Function which should be called whenever a match fails.
bool success(Value * value, Captures & captures) const
Function which should be called whenever a match is successful.
bool matchChildren(Value * value, Captures & captures) const
Subroutine to match all children.
void copyPropertiesFrom(IOperandPrototype const & other)

Public Functions Documentation

function match

virtual bool match(
    Value * value,
    Captures & captures
) const override

Reimplements: microsoft::quantum::IOperandPrototype::match

Interface function which determines if a given Value matches the implemented pattern. It is expected that any implementation of match will return a call to either [success()](/qat/Api/Classes/classmicrosoft_1_1quantum_1_1_i_operand_prototype/#function-success) or [fail()](/qat/Api/Classes/classmicrosoft_1_1quantum_1_1_i_operand_prototype/#function-fail). These functions will, in turn, ensure that the node is captured in the capture table (and erased upon backtracking) as well as matching children.

function copy

virtual Child copy() const override

Reimplements: microsoft::quantum::IOperandPrototype::copy

Interface function which defines a copy operation of the underlying implementation. Note that unlike normal copy operators this operation returns a shared pointer to the new copy.


Updated on 1 August 2023 at 16:25:10 UTC