Class: AdLint::Ld::FunctionDeclaration

Inherits:
Object
  • Object
show all
Includes:
AdLint::LocationHolder
Defined in:
lib/adlint/ld/object.rb

Instance Method Summary collapse

Methods included from AdLint::LocationHolder

#analysis_target?

Constructor Details

#initialize(fun_dcl_rec) ⇒ FunctionDeclaration



226
227
228
# File 'lib/adlint/ld/object.rb', line 226

def initialize(fun_dcl_rec)
  @met_record = fun_dcl_rec
end

Instance Method Details

#eql?(rhs) ⇒ Boolean Also known as: ==



254
255
256
# File 'lib/adlint/ld/object.rb', line 254

def eql?(rhs)
  signature == rhs.signature && location == rhs.location
end

#explicit?Boolean



246
247
248
# File 'lib/adlint/ld/object.rb', line 246

def explicit?
  @met_record.function_declaration_type == "E"
end

#extern?Boolean



242
243
244
# File 'lib/adlint/ld/object.rb', line 242

def extern?
  @met_record.function_linkage_type == "X"
end

#hashObject



260
261
262
# File 'lib/adlint/ld/object.rb', line 260

def hash
  "#{signature} #{location}".hash
end

#implicit?Boolean



250
251
252
# File 'lib/adlint/ld/object.rb', line 250

def implicit?
  @met_record.function_declaration_type == "I"
end

#locationObject



230
231
232
# File 'lib/adlint/ld/object.rb', line 230

def location
  @met_record.location
end

#nameObject



238
239
240
# File 'lib/adlint/ld/object.rb', line 238

def name
  @met_record.function_id.name
end

#signatureObject



234
235
236
# File 'lib/adlint/ld/object.rb', line 234

def signature
  @met_record.function_id.signature
end