public TraceRecordComponentVisitor(RecordComponentVisitor recordComponentVisitor, Printer printer) : base(VisitorAsmApiVersion.Asm8Experimental, recordComponentVisitor) { // TODO: add 'latest api =' comment when no longer experimental. printerExperimental = printer; }
/// <summary> /// Constructs a new /// <see cref="RecordComponentRemapper" /> /// . /// </summary> /// <param name="api"> /// the ASM API version supported by this remapper. Must be /// <see cref="Opcodes.Asm8_Experimental" /> /// . /// </param> /// <param name="recordComponentVisitor"> /// the record component visitor this remapper must delegate to. /// </param> /// <param name="remapper"> /// the remapper to use to remap the types in the visited record component. /// </param> protected internal RecordComponentRemapper(VisitorAsmApiVersion api, RecordComponentVisitor recordComponentVisitor , Remapper remapper) : base(api, recordComponentVisitor) { /* latest api = */ this.remapper = remapper; }
/// <summary> /// Constructs a new /// <see cref="CheckRecordComponentAdapter" /> /// . /// <i> /// Subclasses must not use this /// constructor /// </i> /// . Instead, they must use the /// <see cref="CheckRecordComponentAdapter(int, Org.Objectweb.Asm.RecordComponentVisitor) /// " /> /// version. /// </summary> /// <param name="recordComponentVisitor"> /// the record component visitor to which this adapter must delegate /// calls. /// </param> /// <exception cref="System.InvalidOperationException"> /// If a subclass calls this constructor. /// </exception> public CheckRecordComponentAdapter(RecordComponentVisitor recordComponentVisitor) : this(VisitorAsmApiVersion.Asm8Experimental, recordComponentVisitor) { // TODO: add 'latest api =' comment when no longer experimental. if (GetType() != typeof(CheckRecordComponentAdapter)) { throw new InvalidOperationException(); } }
/// <summary> /// Constructs a new /// <see cref="CheckRecordComponentAdapter" /> /// . /// </summary> /// <param name="api"> /// the ASM API version implemented by this visitor. Must be /// <see cref="Org.Objectweb.Asm.Opcodes.Asm8_Experimental" /> /// . /// </param> /// <param name="recordComponentVisitor"> /// the record component visitor to which this adapter must delegate /// calls. /// </param> protected internal CheckRecordComponentAdapter(VisitorAsmApiVersion api, RecordComponentVisitor recordComponentVisitor ) : base(api, recordComponentVisitor) { }
/// <summary>Constructs a new remapper for record components.</summary> /// <remarks> /// Constructs a new remapper for record components. The default implementation of this method /// returns a new /// <see cref="RecordComponentRemapper" /> /// . /// </remarks> /// <param name="recordComponentVisitor"> /// the RecordComponentVisitor the remapper must delegate to. /// </param> /// <returns>the newly created remapper.</returns> protected internal virtual RecordComponentVisitor CreateRecordComponentRemapper(RecordComponentVisitor recordComponentVisitor) { return(new RecordComponentRemapper(api, recordComponentVisitor, remapper)); }
/// <summary> /// Constructs a new /// <see cref="RecordComponentRemapper" /> /// . /// <i> /// Subclasses must not use this /// constructor /// </i> /// . Instead, they must use the /// <see cref="RecordComponentRemapper(int, RecordComponentVisitor, Remapper) /// " /> /// version. /// </summary> /// <param name="recordComponentVisitor"> /// the record component visitor this remapper must delegate to. /// </param> /// <param name="remapper"> /// the remapper to use to remap the types in the visited record component. /// </param> public RecordComponentRemapper(RecordComponentVisitor recordComponentVisitor, Remapper remapper) : this(VisitorAsmApiVersion.Asm7, recordComponentVisitor, remapper) { }