Module: Net::IMAP::NumValidator
Relationships & Source Files | |
Defined in: | lib/net/imap.rb |
Overview
Common validators of number and nz_number types
Class Method Summary
-
.ensure_number(num)
Ensure argument is 'number' or raise DataFormatError.
-
.ensure_nz_number(num)
Ensure argument is 'nz_number' or raise DataFormatError.
-
.valid_number?(num) ⇒ Boolean
Check is passed argument valid 'number' in RFC 3501 terminology.
-
.valid_nz_number?(num) ⇒ Boolean
Check is passed argument valid 'nz_number' in RFC 3501 terminology.
Class Method Details
.ensure_number(num)
Ensure argument is 'number' or raise DataFormatError
# File 'lib/net/imap.rb', line 1636
def ensure_number(num) return if valid_number?(num) msg = "number must be unsigned 32-bit integer: #{num}" raise DataFormatError, msg end
.ensure_nz_number(num)
Ensure argument is 'nz_number' or raise DataFormatError
# File 'lib/net/imap.rb', line 1644
def ensure_nz_number(num) return if valid_nz_number?(num) msg = "nz_number must be non-zero unsigned 32-bit integer: #{num}" raise DataFormatError, msg end
.valid_number?(num) ⇒ Boolean
Check is passed argument valid 'number' in RFC 3501 terminology
# File 'lib/net/imap.rb', line 1618
def valid_number?(num) # [RFC 3501] # number = 1*DIGIT # ; Unsigned 32-bit integer # ; (0 <= n < 4,294,967,296) num >= 0 && num < 4294967296 end
.valid_nz_number?(num) ⇒ Boolean
Check is passed argument valid 'nz_number' in RFC 3501 terminology
# File 'lib/net/imap.rb', line 1627
def valid_nz_number?(num) # [RFC 3501] # nz-number = digit-nz *DIGIT # ; Non-zero unsigned 32-bit integer # ; (0 < n < 4,294,967,296) num != 0 && valid_number?(num) end