Welcome to the OOP pattern matching: Visitor Pattern

Welcome to the OOP pattern matching: Visitor Pattern

Visitor pattern is dead. Long live to Visitor pattern. (With Kotlin examples)