anchor.diff:    }
   
     double _getCrossSize(RenderBox child) {
  -    return (_direction == Axis.horizontal) ? child.size.height : child.size.width;
  +    switch (_direction) {
  +      case Axis.horizontal:
  +        return child.size.height;
  +      case Axis.vertical:
  +        return child.size.width;
  +    }
  +    return null;
     }
   
     double _getMainSize(RenderBox child) {
  -    return (_direction == Axis.horizontal) ? child.size.width : child.size.height;
  +    switch (_direction) {
  +      case Axis.horizontal:
  +        return child.size.width;
  +      case Axis.vertical:
  +        return child.size.height;
  +    }
  +    return null;
     }
   
     @override
  
positive.code:   MainAxisSize get mainAxisSize => _mainAxisSize;
    MainAxisSize _mainAxisSize;
    set mainAxisSize(MainAxisSize value) {
      if (_mainAxisSize != value) {
        _mainAxisSize = value;
        markNeedsLayout();
  
negative.code:   Axis get direction => _direction;
    Axis _direction;
    set direction(Axis value) {
      assert(value != null);
      if (_direction != value) {
        _direction = value;
        markNeedsLayout();
  