diff options
| -rw-r--r-- | internal/llm/anthropic.go | 7 | ||||
| -rw-r--r-- | internal/llm/ollama.go | 3 | ||||
| -rw-r--r-- | internal/llm/openai.go | 3 | ||||
| -rw-r--r-- | internal/llm/openrouter.go | 3 | ||||
| -rw-r--r-- | internal/llm/yousearch.go | 4 |
5 files changed, 17 insertions, 3 deletions
diff --git a/internal/llm/anthropic.go b/internal/llm/anthropic.go index 00af17a..6ed808f 100644 --- a/internal/llm/anthropic.go +++ b/internal/llm/anthropic.go @@ -25,6 +25,13 @@ type anthropicClient struct { defaultTemperature *float64 } +// Ensure anthropicClient implements Client and Streamer. All of its methods use +// value receivers, so the assertions use a zero-value struct (not a pointer). +var ( + _ Client = anthropicClient{} + _ Streamer = anthropicClient{} +) + type anthropicChatRequest struct { Model string `json:"model"` Messages []anthropicMessage `json:"messages"` diff --git a/internal/llm/ollama.go b/internal/llm/ollama.go index 83823bc..92fece8 100644 --- a/internal/llm/ollama.go +++ b/internal/llm/ollama.go @@ -28,7 +28,8 @@ type ollamaClient struct { defaultTemperature *float64 } -// Ensure ollamaClient implements Client and Streamer. +// Ensure ollamaClient implements Client and Streamer. All of its methods use +// value receivers, so the assertions use a zero-value struct (not a pointer). var ( _ Client = ollamaClient{} _ Streamer = ollamaClient{} diff --git a/internal/llm/openai.go b/internal/llm/openai.go index 983723a..25696ce 100644 --- a/internal/llm/openai.go +++ b/internal/llm/openai.go @@ -25,7 +25,8 @@ type openAIClient struct { defaultTemperature *float64 } -// Ensure openAIClient implements Client and Streamer. +// Ensure openAIClient implements Client and Streamer. All of its methods use +// value receivers, so the assertions use a zero-value struct (not a pointer). var ( _ Client = openAIClient{} _ Streamer = openAIClient{} diff --git a/internal/llm/openrouter.go b/internal/llm/openrouter.go index 970ec29..567a2c0 100644 --- a/internal/llm/openrouter.go +++ b/internal/llm/openrouter.go @@ -22,7 +22,8 @@ type openRouterClient struct { defaultTemperature *float64 } -// Ensure openRouterClient implements Client and Streamer. +// Ensure openRouterClient implements Client and Streamer. All of its methods +// use value receivers, so the assertions use a zero-value struct (not a pointer). var ( _ Client = openRouterClient{} _ Streamer = openRouterClient{} diff --git a/internal/llm/yousearch.go b/internal/llm/yousearch.go index 66cfb35..8990c26 100644 --- a/internal/llm/yousearch.go +++ b/internal/llm/yousearch.go @@ -26,6 +26,10 @@ type youSearchClient struct { chatLogger logging.ChatLogger } +// Ensure youSearchClient implements Client. It does not implement Streamer +// because the You.com research API returns a single completed result rather +// than a token stream. Methods use value receivers, so the assertion uses a +// zero-value struct (not a pointer). var _ Client = youSearchClient{} type youSearchRequest struct { |
