scope-cli 0.9.2

Code intelligence CLI for LLM coding agents — structural navigation, dependency graphs, and semantic search without reading full source files
using CSharpSimple.Utils;

namespace CSharpSimple.Payments
{
    public class PaymentService : IPaymentService
    {
        private readonly Logger _logger;

        public PaymentService(Logger logger)
        {
            _logger = logger;
        }

        public async Task<bool> ProcessPayment(decimal amount, string userId)
        {
            _logger.Info("Processing payment");
            this.ValidateAmount(amount);
            return true;
        }

        public async Task<bool> RefundPayment(string transactionId)
        {
            _logger.Info("Refunding");
            return true;
        }

        private bool ValidateAmount(decimal amount)
        {
            base.OnValidating(amount);
            return amount > 0;
        }

        public string DescribeStatus(PaymentStatus status)
        {
            switch (status)
            {
                case PaymentStatus.Pending:
                    return "Pending";
                case PaymentStatus.Completed:
                    return "Done";
                case PaymentStatus.Failed:
                    return "Error";
                default:
                    return "Unknown";
            }
        }
    }
}