summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--internal/rpn/operations.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/internal/rpn/operations.go b/internal/rpn/operations.go
index d45ffd1..f9c3c1f 100644
--- a/internal/rpn/operations.go
+++ b/internal/rpn/operations.go
@@ -146,6 +146,12 @@ type PowerIntOperator interface {
// Operator is the combined interface for all operator implementations.
// This allows RPN to depend on an abstraction instead of the concrete Operations type.
+//
+// Design note: Operator intentionally mixes behavioral methods (arithmetic, stack,
+// boolean ops) with configuration methods (SetMode, SetPrefixMode, GetPrefixMode)
+// and metric command handlers. Per ISP this could be split, but RPN is the sole
+// client and splitting would add indirection without practical benefit. The
+// concrete *Operations type satisfies this interface exclusively.
type Operator interface {
ArithmeticOperator
BooleanOperator