Class: ActionMailer::Base

Inherits:
Object show all
Defined in:
runtime/action_mailer/base.rb,
runtime/action_mailer/base.rbs

Overview

The mailer class: header defaults, the delivery seam, and captured mail.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.default(opts = nil) ⇒ void

store header defaults on this class. mail puts them under its call options, and subclasses inherit them through defaults.

Parameters:

  • opts (Hash{Symbol => Object}) (defaults to: nil) —

    the mailer defaults

Raises:

  • (ArgumentError) —

    opts is not a Hash, or a block was given



10
# File 'runtime/action_mailer/base.rb', line 10

def self.default: (?Hash[Symbol, untyped]? opts) -> void

.defaults ⇒ Hash{Symbol => Object}

the effective defaults for this class: the parent chain's values with this class's declarations on top.

Returns:

  • (Hash{Symbol => Object}) —

    the merged header defaults



27
# File 'runtime/action_mailer/base.rb', line 27

def self.defaults: () -> Hash[Symbol, untyped]

.deliveries ⇒ Array[Message]

the in-memory list CaptureMethod pushes into.

Returns:



36
# File 'runtime/action_mailer/base.rb', line 36

def self.deliveries: () -> Array[Message]

.delivery_method ⇒ _DeliveryMethod

the registered class answering deliver(message) -> message.

Returns:

Raises:

  • (RuntimeError) —

    no method was registered



44
# File 'runtime/action_mailer/base.rb', line 44

def self.delivery_method: () -> _DeliveryMethod

.delivery_method=(method) ⇒ Object

A nil assignment unregisters; the next delivery raises.



51
# File 'runtime/action_mailer/base.rb', line 51

def self.delivery_method=: (untyped method) -> untyped

Instance Method Details

#mail(opts) ⇒ Message

build a message with the class defaults under the call options, so a per-call value wins.

Parameters:

  • opts (Hash{Symbol => Object}) —

    the call's header options

Returns:

Raises:

  • (ArgumentError) —

    opts is not a Hash



61
# File 'runtime/action_mailer/base.rb', line 61

def mail: (Hash[Symbol, untyped]? opts) -> Message