edu.umd.cs.findbugs.ba.bcp

Class PatternElementMatch



  • public class PatternElementMatch
    extends Object
    PatternElementMatch represents matching a PatternElement against a single instruction. The "prev" field points to the previous PatternElementMatch. By building up sequences of PatternElementMatch objects in this way, we can implement nondeterministic matching without having to copy anything.
    • Constructor Detail

      • PatternElementMatch

        public PatternElementMatch(PatternElement patternElement,
                           org.apache.bcel.generic.InstructionHandle matchedInstruction,
                           BasicBlock basicBlock,
                           int matchCount,
                           PatternElementMatch prev)
        Constructor.
        Parameters:
        patternElement - the PatternElement being matched
        matchedInstruction - the instruction which matched the PatternElement
        basicBlock - the basic block containing the matched instruction
        matchCount - the index (starting at zero) of the instructions matching the PatternElement; multiple instructions can match the same PatternElement
        prev - the previous PatternElementMatch
    • Method Detail

      • getPatternElement

        public PatternElement getPatternElement()
        Get the PatternElement.
      • getMatchedInstructionInstructionHandle

        public org.apache.bcel.generic.InstructionHandle getMatchedInstructionInstructionHandle()
        Get the matched instruction.
      • getBasicBlock

        public BasicBlock getBasicBlock()
        Get the basic block containing the matched instruction.
      • getMatchCount

        public int getMatchCount()
      • getLabeledInstruction

        public org.apache.bcel.generic.InstructionHandle getLabeledInstruction(String label)
        Get the first instruction matched by the PatternElement with given label.
      • getFirstLabeledMatch

        public PatternElementMatch getFirstLabeledMatch(String label)
        Get first match element with given label, if any.
      • getLastLabeledMatch

        public PatternElementMatch getLastLabeledMatch(String label)
        Get last match element with given label, if any.
      • allowTrailingEdges

        public boolean allowTrailingEdges()
        Return whether or not the most recently matched instruction allows trailing edges.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object

Copyright © 2003–2015. All rights reserved.