Files
repo-lens/include/repo_tool_interface.hpp
wilmc a0fbb9f50e
CI / build (debug, map[compiler:appleclang os:macos-latest]) (push) Canceled after 0s
CI / build (debug, map[compiler:clang os:ubuntu-latest]) (push) Canceled after 0s
CI / build (debug, map[compiler:gcc os:ubuntu-latest]) (push) Canceled after 0s
CI / build (debug, map[compiler:msvc os:windows-latest]) (push) Canceled after 0s
CI / build (release, map[compiler:appleclang os:macos-latest]) (push) Canceled after 0s
CI / build (release, map[compiler:clang os:ubuntu-latest]) (push) Canceled after 0s
CI / build (release, map[compiler:gcc os:ubuntu-latest]) (push) Canceled after 0s
CI / build (release, map[compiler:msvc os:windows-latest]) (push) Canceled after 0s
CI / build (sanitizers, map[compiler:appleclang os:macos-latest]) (push) Canceled after 0s
CI / build (sanitizers, map[compiler:clang os:ubuntu-latest]) (push) Canceled after 0s
CI / build (sanitizers, map[compiler:gcc os:ubuntu-latest]) (push) Canceled after 0s
CI / build (sanitizers, map[compiler:msvc os:windows-latest]) (push) Canceled after 0s
Implement bounded repository navigation with repo-lens
- Add map, find, and around commands with repository root discovery
- Stream literal ripgrep searches with match counts and result limits
- Add direct subprocess execution and explicit error returns
- Disable C++ exceptions and add navigation tests
- Support CMake installation and document builds and deployment
- Add a reusable agent skill and document skill discovery
2026-10-09 13:15:00 +02:00

32 lines
787 B
C++

#ifndef REPO_LENSE_TOOL_INTERFACE_HPP_INCLUDED
#define REPO_LENSE_TOOL_INTERFACE_HPP_INCLUDED
#include <cstdint>
#include <span>
#include <string_view>
#pragma once
namespace rl
{
using exit_code = std::int32_t;
using arguments = std::span<const std::string_view>;
class IRepoLensTool
{
public:
IRepoLensTool() noexcept = default;
virtual ~IRepoLensTool() noexcept = default;
IRepoLensTool(const IRepoLensTool&) noexcept = delete;
IRepoLensTool(IRepoLensTool&&) noexcept = delete;
auto operator=(const IRepoLensTool&) noexcept -> IRepoLensTool& = delete;
auto operator=(IRepoLensTool&&) noexcept -> IRepoLensTool& = delete;
[[nodiscard]] virtual auto execute(arguments args) noexcept -> exit_code = 0;
};
} // namespace rl
#endif // REPO_LENSE_TOOL_INTERFACE_HPP_INCLUDED