代码之家  ›  专栏  ›  技术社区  ›  Valentin Vignal

限制或扩展dart中的枚举

  •  0
  • Valentin Vignal  · 技术社区  · 3 年前

    我正在使用dart,假设我有一个枚举(可能很长),我无法修改:

    enum Animal {
      cat,
      dog,
      lion,
      tigger,
    }
    

    是否可以限制此枚举,我想获得

    enum DomesticAnimal {
      cat,
      dog,
    }
    

    具有 DomesticAnimal.cat 仍然是一个 Animal ?


    此外,是否可以扩展它以获得

    enum LivingCreature {
      cat,
      dog,
      lion,
      tigger,
      tree,
      flower,
    }
    

    哪里 LivingCreature.cat 仍然是一个 动物 ?

    0 回复  |  直到 3 年前
        1
  •  2
  •   lrn    3 年前

    不,目前Dart还没有这样的东西。枚举值对象只属于一个枚举类型。 也无法创建只包含其他类型的一些实例的新类型。