class AdLint::Cc1::PrintfFormat::StringConversionSpecifier

Public Class Methods

new(fmt, trailing_args, env, flags, field_width, prec, len_mod, cs_char) click to toggle source
# File lib/adlint/cc1/format.rb, line 1311
def initialize(fmt, trailing_args, env, flags, field_width, prec,
               len_mod, cs_char)
  super(fmt, trailing_args, env, true, flags, field_width, prec, len_mod,
        cs_char)
end

Public Instance Methods

max_length() click to toggle source
# File lib/adlint/cc1/format.rb, line 1326
def max_length
  # NOTE: Ruby has the buitin mostly C compliant sprintf.
  if conversion_argument && conversion_argument.type.pointer? and
      pointee = pointee_of(conversion_argument) and pointee.type.array?
    len = pointee.type.length ? pointee.type.length - 1 : 0
    (ruby_sprintf_format % (" " * len)).length
  else
    min_length
  end
end
min_length() click to toggle source
# File lib/adlint/cc1/format.rb, line 1321
def min_length
  # NOTE: Ruby has the buitin mostly C compliant sprintf.
  (ruby_sprintf_format % "").length
end
valid_conversion_specifier_character?() click to toggle source
# File lib/adlint/cc1/format.rb, line 1317
def valid_conversion_specifier_character?
  true
end