redef fun identify_language(n) do return n.is_c
- redef fun compile_module_block(block, ecc, nmodule)
+ redef fun compile_module_block(block, ecc, mmodule)
do
if block.is_c_header then
ecc.header_custom.add( block.location.as_line_pragma )
end
end
- redef fun compile_extern_method(block, m, ecc, nmodule)
+ redef fun compile_extern_method(block, m, ecc, mmodule)
do
- var fc = new ExternCFunction(m, nmodule.mmodule.as(not null))
+ var fc = new ExternCFunction(m, mmodule.as(not null))
fc.decls.add( block.location.as_line_pragma )
fc.exprs.add( block.code )
ecc.add_exported_function( fc )
end
- redef fun compile_extern_class(block, m, ecc, nmodule) do end
+ redef fun compile_extern_class(block, m, ecc, mmodule) do end
redef fun get_ftype(block, m) do return new ForeignCType(block.code)
- redef fun compile_callback(callback, nmodule, mmodule, ecc)
+ redef fun compile_callback(callback, mmodule, mainmodule, ecc)
do
- callback.compile_callback_to_c(mmodule, ecc)
+ callback.compile_callback_to_c(mainmodule, ecc)
end
end
fun as_line_pragma: String do return "#line {line_start} \"{file.filename}\"\n"
end
-redef class AModule
+redef class MModule
var c_compiler_options writable = ""
var c_linker_options writable = ""
end
-# An extern C file to compile
-class ExternCFile
- super ExternFile
-
- init (filename, cflags: String)
- do
- super filename
-
- self.cflags = cflags
- end
-
- # Additionnal specific CC compiler -c flags
- var cflags: String
-
- redef fun hash do return filename.hash
- redef fun ==(o) do return o isa ExternCFile and filename == o.filename
-end
-
class ForeignCType
super ForeignType
end
redef class NitniCallback
- fun compile_callback_to_c(nmodule: MModule, ffi_ccu: CCompilationUnit) do end
+ fun compile_callback_to_c(mmodule: MModule, ffi_ccu: CCompilationUnit) do end
end
redef class Object
class ExternCFunction
super CFunction
- var method: AExternPropdef
+ var method: AMethPropdef
- init (method: AExternPropdef, mmodule: MModule)
+ init (method: AMethPropdef, mmodule: MModule)
do
self.method = method