Пример #1
0
        public static Dimensions GetDimensions(this Body body)
        {
            var visitor = new DimensionsVisitor();

            body.Accept(visitor);
            return(visitor.Dimensions);
        }
Пример #2
0
        public static Dimensions GetDimensions(this Body body)
        {
            var visitor = new DimensionsVisitor();

            // Этот трюк с dynamic нужен, чтобы код компилировался,
            // пока вы выполняете первую задачу и ещё не создали метод Body.Accept.
            // В реальном коде он не нужен, а можно просто вызывать body.Accept(...)
            body.Accept(visitor);
            return(visitor.Dimensions);
        }