# Hierarchy For Package net.sf.saxon.expr.instruct

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - net.sf.saxon.functions.AbstractFunction (implements net.sf.saxon.om.Function)
    - net.sf.saxon.expr.instruct.OriginalFunction (implements net.sf.saxon.expr.ContextOriginator, net.sf.saxon.om.Function)
  - net.sf.saxon.expr.instruct.Actor (implements net.sf.saxon.expr.ExpressionOwner, net.sf.saxon.s9api.Location)
    - net.sf.saxon.expr.instruct.AttributeSet
    - net.sf.saxon.expr.instruct.GlobalVariable (implements net.sf.saxon.expr.Binding, net.sf.saxon.expr.ContextOriginator, net.sf.saxon.query.Declaration, net.sf.saxon.trace.TraceableComponent)
      - net.sf.saxon.expr.instruct.GlobalParam
    - net.sf.saxon.expr.instruct.NamedTemplate (implements net.sf.saxon.trace.TraceableComponent)
    - net.sf.saxon.expr.instruct.UserFunction (implements net.sf.saxon.expr.ContextOriginator, net.sf.saxon.om.Function, net.sf.saxon.trace.TraceableComponent)
      - net.sf.saxon.expr.instruct.MemoFunction
  - net.sf.saxon.expr.instruct.ApplyTemplates.ApplyTemplatesPackage (implements net.sf.saxon.expr.instruct.TailCall)
  - net.sf.saxon.expr.instruct.Bindery
  - net.sf.saxon.expr.instruct.BlockIterator (implements net.sf.saxon.om.SequenceIterator)
  - net.sf.saxon.expr.instruct.CallTemplate.CallTemplatePackage (implements net.sf.saxon.expr.instruct.TailCall)
  - net.sf.saxon.expr.instruct.DummyNamespaceResolver (implements net.sf.saxon.om.NamespaceResolver)
  - net.sf.saxon.expr.instruct.Executable
  - net.sf.saxon.expr.Expression (implements net.sf.saxon.expr.ExportAgent, net.sf.saxon.om.IdentityComparable, net.sf.saxon.expr.Locatable, net.sf.saxon.trace.Traceable)
    - net.sf.saxon.expr.instruct.EvaluateInstr
    - net.sf.saxon.expr.instruct.Instruction (implements net.sf.saxon.expr.instruct.TailCallReturner)
      - net.sf.saxon.expr.instruct.AnalyzeString (implements net.sf.saxon.expr.ContextOriginator)
      - net.sf.saxon.expr.instruct.ApplyNextMatchingTemplate (implements net.sf.saxon.expr.instruct.ITemplateCall)
        - net.sf.saxon.expr.instruct.ApplyImports (implements net.sf.saxon.expr.instruct.ITemplateCall)
        - net.sf.saxon.expr.instruct.NextMatch
      - net.sf.saxon.expr.instruct.ApplyTemplates (implements net.sf.saxon.expr.ComponentInvocation, net.sf.saxon.expr.instruct.ITemplateCall)
      - net.sf.saxon.expr.instruct.Block
      - net.sf.saxon.expr.instruct.BreakInstr (implements net.sf.saxon.expr.TailCallLoop.TailCallInfo)
      - net.sf.saxon.expr.instruct.CallTemplate (implements net.sf.saxon.expr.ComponentInvocation, net.sf.saxon.expr.instruct.ITemplateCall)
      - net.sf.saxon.expr.instruct.Choose (implements net.sf.saxon.expr.instruct.ConditionalInstruction)
      - net.sf.saxon.expr.instruct.ComponentTracer
      - net.sf.saxon.expr.instruct.ConditionalBlock
      - net.sf.saxon.expr.instruct.CopyOf (implements net.sf.saxon.expr.instruct.ValidatingInstruction)
      - net.sf.saxon.expr.instruct.Doctype
      - net.sf.saxon.expr.instruct.ForEach (implements net.sf.saxon.expr.ContextMappingFunction, net.sf.saxon.expr.ContextSwitchingExpression)
      - net.sf.saxon.expr.instruct.ForEachGroup (implements net.sf.saxon.expr.ContextMappingFunction, net.sf.saxon.expr.ContextSwitchingExpression, net.sf.saxon.expr.sort.SortKeyEvaluator)
      - net.sf.saxon.expr.instruct.Fork
      - net.sf.saxon.expr.instruct.IterateInstr (implements net.sf.saxon.expr.ContextSwitchingExpression)
      - net.sf.saxon.expr.instruct.LocalParam (implements net.sf.saxon.expr.LocalBinding)
      - net.sf.saxon.expr.instruct.LocalParamBlock
      - net.sf.saxon.expr.instruct.Message
      - net.sf.saxon.expr.instruct.NextIteration (implements net.sf.saxon.expr.TailCallLoop.TailCallInfo)
      - net.sf.saxon.expr.instruct.ParentNodeConstructor (implements net.sf.saxon.expr.instruct.InstructionWithComplexContent, net.sf.saxon.expr.instruct.ValidatingInstruction)
        - net.sf.saxon.expr.instruct.DocumentInstr
        - net.sf.saxon.expr.instruct.ElementCreator
          - net.sf.saxon.expr.instruct.ComputedElement
          - net.sf.saxon.expr.instruct.Copy
          - net.sf.saxon.expr.instruct.FixedElement
      - net.sf.saxon.expr.instruct.ResultDocument (implements net.sf.saxon.expr.ContextOriginator, net.sf.saxon.expr.instruct.InstructionWithComplexContent, net.sf.saxon.expr.instruct.ValidatingInstruction)
      - net.sf.saxon.expr.instruct.SimpleNodeConstructor
        - net.sf.saxon.expr.instruct.AttributeCreator (implements net.sf.saxon.expr.instruct.ValidatingInstruction)
          - net.sf.saxon.expr.instruct.ComputedAttribute
          - net.sf.saxon.expr.instruct.FixedAttribute
        - net.sf.saxon.expr.instruct.Comment
        - net.sf.saxon.expr.instruct.NamespaceConstructor
        - net.sf.saxon.expr.instruct.ProcessingInstruction
        - net.sf.saxon.expr.instruct.ValueOf
      - net.sf.saxon.expr.instruct.SourceDocument
      - net.sf.saxon.expr.instruct.TraceExpression (implements net.sf.saxon.trace.Traceable)
      - net.sf.saxon.expr.instruct.UseAttributeSet (implements net.sf.saxon.expr.ComponentInvocation, net.sf.saxon.expr.ContextOriginator)
    - net.sf.saxon.expr.instruct.NumberInstruction
    - net.sf.saxon.expr.UnaryExpression
      - net.sf.saxon.expr.instruct.OnEmptyExpr
      - net.sf.saxon.expr.instruct.OnNonEmptyExpr
      - net.sf.saxon.expr.instruct.SequenceInstr
      - net.sf.saxon.expr.instruct.WherePopulated (implements net.sf.saxon.expr.ItemMappingFunction)
  - net.sf.saxon.expr.instruct.GlobalContextRequirement
  - net.sf.saxon.expr.instruct.GlobalParameterSet
  - net.sf.saxon.expr.instruct.NamedTemplate.LocalParamInfo
  - net.sf.saxon.value.ObjectValue<T> (implements net.sf.saxon.value.ExternalObject<T>)
    - net.sf.saxon.expr.instruct.Bindery.FailureValue
  - net.sf.saxon.expr.instruct.ParameterSet
  - net.sf.saxon.expr.instruct.SlotManager
  - net.sf.saxon.expr.instruct.TemplateRule (implements net.sf.saxon.expr.ExpressionOwner, net.sf.saxon.s9api.Location, net.sf.saxon.trans.rules.RuleTarget, net.sf.saxon.trace.TraceableComponent)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - javax.xml.transform.TransformerException
        - net.sf.saxon.trans.XPathException
          - net.sf.saxon.expr.instruct.TerminationException
  - net.sf.saxon.expr.instruct.UserFunctionParameter (implements net.sf.saxon.expr.LocalBinding)
  - net.sf.saxon.expr.instruct.WithParam

## Interface Hierarchy

- net.sf.saxon.expr.instruct.ConditionalInstruction
- net.sf.saxon.expr.ContextOriginator
  - net.sf.saxon.expr.instruct.ITemplateCall
- net.sf.saxon.expr.instruct.Debugger
- net.sf.saxon.expr.instruct.InstructionWithComplexContent
- net.sf.saxon.expr.instruct.TailCall
- net.sf.saxon.expr.instruct.TailCallReturner
- net.sf.saxon.expr.instruct.ValidatingInstruction

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - net.sf.saxon.expr.instruct.UserFunction.Determinism