struct LLVM::Type

Defined in:

llvm/enums.cr
llvm/type.cr

Constructors

Instance Method Summary

Constructor Detail

def self.function(arg_types : Array(LLVM::Type), return_type, varargs = false) : selfSource

def self.new(unwrap : LibLLVM::TypeRef)Source

Instance Method Detail

def array(count) : LLVM::TypeSource

def array_size : Int32Source

def const_array(values : Array(LLVM::Value)) : ValueSource

def const_double(value : Float64) : ValueSource

def const_double(string : String) : ValueSource

def const_float(value : Float32) : ValueSource

def const_float(value : String) : ValueSource

def const_int(value) : ValueSource

def context : ContextSource

def element_type : LLVM::TypeSource

def inline_asm(asm_string, constraints, has_side_effects = false, is_align_stack = false, can_throw = false)Source

def inspect(io : IO) : NilSource

Description copied from struct Struct

Appends this struct's name and instance variables names and values to the given IO.

struct Point
  def initialize(@x : Int32, @y : Int32)
  end
end

p1 = Point.new 1, 2
p1.to_s    # "Point(@x=1, @y=2)"
p1.inspect # "Point(@x=1, @y=2)"

def int_width : Int32Source

def kind : LLVM::Type::KindSource

def nullSource

def null_pointerSource

def packed_struct? : BoolSource

def params_sizeSource

def params_typesSource

def pointer : LLVM::TypeSource

def return_typeSource

def sizeSource

def struct_element_types : Array(LLVM::Type)Source

def struct_name : String?Source

Assuming this type is a struct, returns its name. The name can be nil if the struct is anonymous. Raises if this type is not a struct.

def to_unsafe : LibLLVM::TypeRefSource

def undefSource

def unwrap : LibLLVM::TypeRefSource

def varargs?Source

def vector(count) : selfSource

def vector_sizeSource

def void?Source

© 2012–2021 Manas Technology Solutions.
Licensed under the Apache License, Version 2.0.
https://crystal-lang.org/api/1.2.1/LLVM/Type.html