Skip to content

Commit 39ab826

Browse files
committed
Order flag combinations alphabetically
1 parent b7aeb2b commit 39ab826

File tree

2 files changed

+67
-146
lines changed

2 files changed

+67
-146
lines changed

compiler/src/dotty/tools/dotc/core/Flags.scala

Lines changed: 66 additions & 145 deletions
Original file line numberDiff line numberDiff line change
@@ -519,149 +519,70 @@ object Flags {
519519

520520
// ------- Other flag sets -------------------------------------
521521

522-
val NoInitsInterface: FlagSet = NoInits | PureInterface
523-
524-
val AbstractOrTrait: FlagSet = Abstract | Trait
525-
526-
val PrivateOrLocal: FlagSet = Local | Private // Labelled `private` or `protected[local]`
527-
528-
val ModuleOrFinal: FlagSet = Final | ModuleClass // A module class or a final class
529-
530-
val MutableOrLazy: FlagSet = Lazy | Mutable
531-
532-
val MethodOrLazy: FlagSet = Lazy | Method
533-
534-
val MethodOrModule: FlagSet = Method | Module
535-
536-
val MethodOrLazyOrDeferred: FlagSet = Deferred | Lazy | Method
537-
538-
539-
val InlineOrProxy: FlagSet = Inline | InlineProxy // An inline method or inline argument proxy */
540-
541-
val DelegateOrGiven: FlagSet = Delegate | Given
542-
val DelegateOrGivenOrImplicit: FlagSet = Delegate | Given | Implicit
543-
val DelegateOrGivenOrImplicitVal: FlagSet = DelegateOrGivenOrImplicit.toTermFlags
544-
val DelegateOrImplicit: FlagSet = Delegate | Implicit
545-
val GivenOrImplicit: FlagSet = Given | Implicit
546-
547-
val StableOrErased: FlagSet = Erased | StableRealizable // Assumed to be pure
548-
val EffectivelyFinalFlags: FlagSet = Final | Private
549-
550-
val PrivateMethod: FlagSet = Method | Private
551-
552-
val PrivateAccessor: FlagSet = Accessor | Private
553-
554-
val InlineMethod: FlagSet = Inline | Method
555-
556-
val InlineByNameProxy: FlagSet = InlineProxy | Method
557-
558-
val InlineParam: FlagSet = Inline | Param
559-
560-
val ExtensionMethod: FlagSet = Extension | Method
561-
562-
val SyntheticDelegateMethod: FlagSet = Delegate | Method | Synthetic
563-
564-
val EnumCase: FlagSet = Case | Enum
565-
566-
val TermParamOrAccessor: FlagSet = Param | ParamAccessor
567-
568-
val LazyOrDeferred: FlagSet = Deferred | Lazy
569-
570-
val AccessorOrSynthetic: FlagSet = Accessor | Synthetic
571-
572-
val SyntheticOrPrivate: FlagSet = Private | Synthetic
573-
574-
val DeferredOrTermParamOrAccessor: FlagSet = Deferred | ParamAccessor | TermParam // term symbols without right-hand sides
575-
576-
val DeferredOrTypeParam: FlagSet = Deferred | TypeParam // type symbols without right-hand sides
577-
578-
/** value that's final or inline */
579-
val FinalOrInline: FlagSet = Final | Inline
580-
581-
/** class that's final or sealed */
582-
val FinalOrSealed: FlagSet = Final | Sealed
583-
584-
/** A covariant type parameter instance */
585-
val LocalCovariant: FlagSet = Local | Covariant
586-
587-
/** A contravariant type parameter instance */
588-
val LocalContravariant: FlagSet = Local | Contravariant
589-
590-
/** Has defined or inherited default parameters */
591-
val HasDefaultParamsFlags: FlagSet = DefaultParameterized | InheritedDefaultParams
592-
593-
/** Is valid forever */
594-
val ValidForeverFlags: FlagSet = Package | Permanent | Scala2ExistentialCommon
595-
596-
/** A type parameter of a class or trait */
597-
val ClassTypeParam: FlagSet = TypeParam | Private
598-
599-
/** Is a default parameter in Scala 2*/
600-
val DefaultParameter: FlagSet = Param | DefaultParameterized
601-
602-
/** A trait that does not need to be initialized */
603-
val NoInitsTrait: FlagSet = Trait | NoInits
604-
605-
/** A Java interface, potentially with default methods */
606-
val JavaTrait: FlagSet = JavaDefined | Trait | NoInits
607-
608-
/** A Java interface */ // TODO when unpickling, reconstitute from context
609-
val JavaInterface: FlagSet = JavaDefined | Trait
610-
611-
/** A Java companion object */
612-
val JavaModule: FlagSet = JavaDefined | Module
613-
614-
/** A Java companion object */
615-
val JavaProtected: FlagSet = JavaDefined | Protected
616-
617-
/** A Java enum */
618-
val JavaEnum: FlagSet = JavaDefined | Enum
619-
620-
/** A Java enum trait */
621-
val JavaEnumTrait: FlagSet = JavaDefined | Enum
622-
623-
/** A Java enum value */
624-
val JavaEnumValue: FlagSet = StableRealizable | JavaStatic | JavaDefined | Enum
625-
626-
/** An enum value */
627-
val EnumValue: FlagSet = StableRealizable | JavaStatic | Enum
628-
629-
/** Labeled private[this] */
630-
val PrivateLocal: FlagSet = Private | Local
631-
632-
/** A private[this] parameter accessor */
633-
val PrivateLocalParamAccessor: FlagSet = Private | Local | ParamAccessor
634-
635-
/** A parameter forwarder */
636-
val ParamForwarder: FlagSet = Method | StableRealizable | ParamAccessor
637-
638-
/** A private[this] parameter */
639-
val PrivateLocalParam: FlagSet = Private | Local | Param
640-
641-
/** A private parameter accessor */
642-
val PrivateParamAccessor: FlagSet = Private | ParamAccessor
643-
644-
/** A local parameter */
645-
val ParamAndLocal: FlagSet = Param | Local
646-
647-
/** Labeled protected[this] */
648-
val ProtectedLocal: FlagSet = Protected | Local
649-
650-
val LiftedMethod: FlagSet = Lifted | Method
651-
652-
/** Java symbol which is `protected` and `static` */
653-
val StaticProtected: FlagSet = JavaDefined | Protected | JavaStatic
654-
655-
val Scala2Trait: FlagSet = Scala2x | Trait
656-
657-
val AbstractFinal: FlagSet = Abstract | Final
658-
val AbstractSealed: FlagSet = Abstract | Sealed
659-
val AbstractAndOverride: FlagSet = Abstract | Override
660-
661-
val SyntheticArtifact: FlagSet = Synthetic | Artifact
662-
val SyntheticModule: FlagSet = Synthetic | Module
663-
val SyntheticTermParam: FlagSet = Synthetic | TermParam
664-
val SyntheticTypeParam: FlagSet = Synthetic | TypeParam
665-
val SyntheticCase: FlagSet = Synthetic | Case
666-
val SyntheticOpaque: FlagSet = Synthetic | Opaque
522+
val AbstractFinal: FlagSet = Abstract | Final
523+
val AbstractSealed: FlagSet = Abstract | Sealed
524+
val AbstractOverride: FlagSet = Abstract | Override
525+
val AbstractOrTrait: FlagSet = Abstract | Trait
526+
val PrivateAccessor: FlagSet = Accessor | Private
527+
val AccessorOrSynthetic: FlagSet = Accessor | Synthetic
528+
val EnumCase: FlagSet = Case | Enum
529+
val LocalCovariant: FlagSet = Covariant | Local // A covariant type parameter
530+
val LocalContravariant: FlagSet = Contravariant | Local // A contravariant type parameter
531+
val HasDefaultParamsFlags: FlagSet = DefaultParameterized | InheritedDefaultParams // Has defined or inherited default parameters
532+
val DefaultParameter: FlagSet = DefaultParameterized | Param // A Scala 2x default parameter
533+
val LazyOrDeferred: FlagSet = Deferred | Lazy
534+
val MethodOrLazyOrDeferred: FlagSet = Deferred | Lazy | Method
535+
val DeferredOrTermParamOrAccessor: FlagSet = Deferred | ParamAccessor | TermParam // term symbols without right-hand sides
536+
val DeferredOrTypeParam: FlagSet = Deferred | TypeParam // type symbols without right-hand sides
537+
val DelegateOrGiven: FlagSet = Delegate | Given
538+
val DelegateOrGivenOrImplicit: FlagSet = Delegate | Given | Implicit
539+
val DelegateOrGivenOrImplicitVal: FlagSet = DelegateOrGivenOrImplicit.toTermFlags
540+
val DelegateOrImplicit: FlagSet = Delegate | Implicit
541+
val EnumValue: FlagSet = Enum | JavaStatic | StableRealizable // A Scala enum value
542+
val StableOrErased: FlagSet = Erased | StableRealizable // Assumed to be pure
543+
val ExtensionMethod: FlagSet = Extension | Method
544+
val FinalOrInline: FlagSet = Final | Inline
545+
val FinalOrSealed: FlagSet = Final | Sealed
546+
val ModuleOrFinal: FlagSet = Final | ModuleClass // A module class or a final class
547+
val EffectivelyFinalFlags: FlagSet = Final | Private
548+
val GivenOrImplicit: FlagSet = Given | Implicit
549+
val InlineOrProxy: FlagSet = Inline | InlineProxy // An inline method or inline argument proxy */
550+
val InlineMethod: FlagSet = Inline | Method
551+
val InlineParam: FlagSet = Inline | Param
552+
val InlineByNameProxy: FlagSet = InlineProxy | Method
553+
val JavaEnum: FlagSet = JavaDefined | Enum // TODO: merge with JavaEnumTrait
554+
val JavaEnumTrait: FlagSet = JavaDefined | Enum // A Java enum trait
555+
val JavaEnumValue: FlagSet = JavaDefined | EnumValue // A Java enum value
556+
val StaticProtected: FlagSet = JavaDefined | JavaStatic | Protected // Java symbol which is `protected` and `static`
557+
val JavaModule: FlagSet = JavaDefined | Module // A Java companion object
558+
val JavaTrait: FlagSet = JavaDefined | NoInits | Trait // A Java interface, potentially with default methods // TODO: merge with JavaInterface
559+
val JavaProtected: FlagSet = JavaDefined | Protected
560+
val JavaInterface: FlagSet = JavaDefined | Trait
561+
val MethodOrLazy: FlagSet = Lazy | Method
562+
val MutableOrLazy: FlagSet = Lazy | Mutable
563+
val LiftedMethod: FlagSet = Lifted | Method
564+
val ParamAndLocal: FlagSet = Local | Param // TODO: merge with PrivateLocalParam?
565+
val PrivateLocalParam: FlagSet = Local | Param | Private
566+
val PrivateLocalParamAccessor: FlagSet = Local | ParamAccessor | Private
567+
val PrivateOrLocal: FlagSet = Local | Private // Labelled `private` or `protected[local]`
568+
val PrivateLocal: FlagSet = Local | Private // private[this]
569+
val ProtectedLocal: FlagSet = Local | Protected
570+
val MethodOrModule: FlagSet = Method | Module
571+
val ParamForwarder: FlagSet = Method | ParamAccessor | StableRealizable // A parameter forwarder
572+
val PrivateMethod: FlagSet = Method | Private
573+
val NoInitsInterface: FlagSet = NoInits | PureInterface
574+
val NoInitsTrait: FlagSet = NoInits | Trait // A trait that does not need to be initialized
575+
val ValidForeverFlags: FlagSet = Package | Permanent | Scala2ExistentialCommon
576+
val TermParamOrAccessor: FlagSet = Param | ParamAccessor
577+
val PrivateParamAccessor: FlagSet = ParamAccessor | Private
578+
val SyntheticOrPrivate: FlagSet = Private | Synthetic
579+
val ClassTypeParam: FlagSet = Private | TypeParam
580+
val Scala2Trait: FlagSet = Scala2x | Trait
581+
val SyntheticDelegateMethod: FlagSet = Synthetic | Delegate | Method
582+
val SyntheticArtifact: FlagSet = Synthetic | Artifact
583+
val SyntheticModule: FlagSet = Synthetic | Module
584+
val SyntheticTermParam: FlagSet = Synthetic | TermParam
585+
val SyntheticTypeParam: FlagSet = Synthetic | TypeParam
586+
val SyntheticCase: FlagSet = Synthetic | Case
587+
val SyntheticOpaque: FlagSet = Synthetic | Opaque
667588
}

compiler/src/dotty/tools/dotc/parsing/Parsers.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2033,7 +2033,7 @@ object Parsers {
20332033
private def normalize(mods: Modifiers): Modifiers =
20342034
if (mods.is(Private) && mods.hasPrivateWithin)
20352035
normalize(mods &~ Private)
2036-
else if (mods.isAllOf(AbstractAndOverride))
2036+
else if (mods.isAllOf(AbstractOverride))
20372037
normalize(addFlag(mods &~ (Abstract | Override), AbsOverride))
20382038
else
20392039
mods

0 commit comments

Comments
 (0)