create<T extends SizeAttribute> static method

T create<T extends SizeAttribute>(
  1. double size
)

Create instance a class of SizeAttribute

Implementation

static T create<T extends SizeAttribute>(double size) {
  switch (T) {
    case HeightAttribute:
      return HeightAttribute(size) as T;
    case MaxHeightAttribute:
      return MaxHeightAttribute(size) as T;
    case MinHeightAttribute:
      return MinHeightAttribute(size) as T;
    case WidthAttribute:
      return WidthAttribute(size) as T;
    case MaxWidthAttribute:
      return MaxWidthAttribute(size) as T;
    case MinWidthAttribute:
      return MinWidthAttribute(size) as T;
    default:
      throw Exception('Cannot create SizeAttribute of $T');
  }
}