ronin.go

class ronin.go.GoCompile(command=None)

Bases: ronin.go.GoExecutor

Go compile executor.

The phase inputs are “.go” source files. The phase outputs are “.o” object files.

Parameters:command (str or FunctionType) – go command; defaults to the context’s go.go_command
add_import_path(*values)
assume_complete()
create_packages()
disable_errors_limit()
disable_inlining()
disable_local_imports()
disable_optimizations()
disable_unsafe_imports()
enable_large_model()
enable_memory_sanitizier()
enable_race_detector()
expected_import_path(*values)
local_import_path(*values)
class ronin.go.GoExecutor(command=None)

Bases: ronin.executors.ExecutorWithArguments

Base class for Go executors.

Parameters:command (str or FunctionType) – go command; defaults to the context’s go.go_command

Bases: ronin.go.GoExecutor

Go link executor.

The phase inputs are “.o” object files. The phase output is an executable (the default), an “.so” or “.dll” shared library, or a static library (“.a”).

Parameters:
add_import_path(*values)
ar(value)
build_mode(value)
disable_data_checks()
disable_debug()
disable_dynamic_header()
disable_version_checks()
enable_memory_sanitizier()
enable_race_detector()
executable_format(value)
linker(value)
class ronin.go.GoPackage(project, phase_name)

Bases: ronin.extensions.Extension

A Go package generated by another phase.

Parameters:
apply_to_executor_go(executor)
apply_to_phase(phase)
ronin.go.configure_go(go_command=None)

Configures the current context’s Go support.

Parameters:go_command (str or FunctionType) – go command; defaults to “go”