private int AddContracts(RootConfig rootConfig, List<string> contracts, GenerateContractMode mode, bool internalVisibility) { if (!contracts.Any() || contracts.Any(c => c.EndsWith(".*", StringComparison.OrdinalIgnoreCase))) { try { rootConfig.AddAllContracts(mode, internalVisibility); } catch (Exception e) { return HandleError($"Failed to resolve contracts", e); } return 0; } foreach (var contract in contracts) { if (contract.EndsWith(".*", StringComparison.OrdinalIgnoreCase)) { var ns = contract.TrimEnd('*', '.'); try { rootConfig.AddContractsFromNamespace(ns, mode, internalVisibility); } catch (Exception e) { return HandleError($"Failed to resolve contracts: {contract.White().Bold()}", e); } } else { try { rootConfig.AddContract(contract, mode, internalVisibility); } catch (Exception e) { return HandleError($"Failed to resolve contract: {contract.White().Bold()}", e); } } } return 0; }