blob: d7adb4284e8a43602e33e80789467958facebe11 [file] [log] [blame]
// Copyright 2019 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef ZIRCON_TOOLS_KAZOO_OUTPUTS_H_
#define ZIRCON_TOOLS_KAZOO_OUTPUTS_H_
#include "tools/kazoo/syscall_library.h"
#include "tools/kazoo/writer.h"
// All of the output functions write only to |writer|, and return true on
// success or false on failure with an error logged.
bool CategoryOutput(const SyscallLibrary& library, Writer* writer);
bool CUlibHeaderOutput(const SyscallLibrary& library, Writer* writer);
bool GoSyscallsAsm(const SyscallLibrary& library, Writer* writer);
bool GoSyscallsStubs(const SyscallLibrary& library, Writer* writer);
bool GoVdsoArm64Calls(const SyscallLibrary& library, Writer* writer);
bool GoVdsoKeys(const SyscallLibrary& library, Writer* writer);
bool GoVdsoX86Calls(const SyscallLibrary& library, Writer* writer);
bool JsonOutput(const SyscallLibrary& library, Writer* writer);
bool KernelDeclarationsOutput(const SyscallLibrary& library, Writer* writer);
bool KernelWrappersOutput(const SyscallLibrary& library, Writer* writer);
bool KtraceOutput(const SyscallLibrary& library, Writer* writer);
bool PrivateDeclarationsOutput(const SyscallLibrary& library, Writer* writer);
bool PublicDeclarationsOutput(const SyscallLibrary& library, Writer* writer);
bool TestonlyPublicDeclarationsOutput(const SyscallLibrary& library, Writer* writer);
bool RustOutput(const SyscallLibrary& library, Writer* writer);
bool SyscallNumbersOutput(const SyscallLibrary& library, Writer* writer);
#endif // ZIRCON_TOOLS_KAZOO_OUTPUTS_H_