Expand Output Interface/Methods#124
Conversation
…al string accessors
Greptile SummaryThis PR expands the
Confidence Score: 5/5Safe to merge — all new methods are additive, follow established patterns, and are covered by tests including edge cases and round-trip assertions. The new methods are purely additive on the @experimental contracts, the Multi overrides mirror the existing delegation pattern used by a dozen other methods in the same class, the centralisation of MbString::split() is a straight refactor of code that was already in the codebase, and the tests cover both the happy path and the exception-throwing branches for embedded IPv4 addresses. No files require special attention. Important Files Changed
Class Diagram%%{init: {'theme': 'neutral'}}%%
classDiagram
class OutputInterface {
<<interface>>
+getBinary() string
+getOctets() list~int~
+toString() string
+__toString() string
}
class Output6Interface {
<<interface>>
+getCompactedAddress() string
+getExpandedAddress() string
+getSegments() list~int~
}
class AbstractIP {
+getBinary() string
+getOctets() list~int~
}
class IPv4 {
+toString() string
+__toString() string
}
class IPv6 {
+getSegments() list~int~
+toString() string
+__toString() string
}
class Multi {
+getOctets() list~int~
+getSegments() list~int~
+toString() string
+__toString() string
}
Output6Interface --|> OutputInterface
AbstractIP ..|> OutputInterface
IPv4 --|> AbstractIP
IPv6 --|> AbstractIP
IPv6 ..|> Output6Interface
Multi --|> IPv6
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
classDiagram
class OutputInterface {
<<interface>>
+getBinary() string
+getOctets() list~int~
+toString() string
+__toString() string
}
class Output6Interface {
<<interface>>
+getCompactedAddress() string
+getExpandedAddress() string
+getSegments() list~int~
}
class AbstractIP {
+getBinary() string
+getOctets() list~int~
}
class IPv4 {
+toString() string
+__toString() string
}
class IPv6 {
+getSegments() list~int~
+toString() string
+__toString() string
}
class Multi {
+getOctets() list~int~
+getSegments() list~int~
+toString() string
+__toString() string
}
Output6Interface --|> OutputInterface
AbstractIP ..|> OutputInterface
IPv4 --|> AbstractIP
IPv6 --|> AbstractIP
IPv6 ..|> Output6Interface
Multi --|> IPv6
Reviews (2): Last reviewed commit: "refactor(util): ♻️ centralise byte-strin..." | Re-trigger Greptile |
No description provided.