lib/ivar/explicit_positional_declaration.rb
# frozen_string_literal: true require_relative "explicit_declaration" module Ivar # Represents an explicit declaration that initializes from positional arguments class ExplicitPositionalDeclaration < ExplicitDeclaration # Called before object initialization # @param instance [Object] The object being initialized # @param args [Array] Positional arguments # @param kwargs [Hash] Keyword arguments def before_init(instance, args, kwargs) super if args.length > 0 instance.instance_variable_set(@name, args.shift) end end end end