class BOAST::Sizet

@!parse module VarFunctors; var_functorize Sizet; end

Attributes

signed[R]
size[R]
vector_length[R]

Public Class Methods

new(hash={}) click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 25
def initialize(hash={})
  if hash[:signed] != nil then
    @signed = hash[:signed]
  end
  @size = nil
  @vector_length = 1
end

Public Instance Methods

copy(options={}) click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 37
def copy(options={})
  hash = to_hash
  options.each { |k,v|
    hash[k] = v
  }
  return Sizet::new(hash)
end
decl() click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 45
def decl
  return "integer(kind=#{get_default_int_size})" if lang == FORTRAN
  unless @signed then
    return "size_t" if [C, CL, CUDA].include?( lang )
  else
    return "ptrdiff_t" if [C, CL, CUDA].include?( lang )
  end
end
decl_ffi() click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 54
def decl_ffi
  return :size_t
end
signed?() click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 58
def signed?
  return signed
end
suffix() click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 62
def suffix
  s = ""
  return s
end
to_hash() click to toggle source
# File lib/BOAST/Language/DataTypes.rb, line 33
def to_hash
  return { :signed => @signed }
end