summaryrefslogblamecommitdiff
path: root/src/reflect/scala/reflect/internal/settings/AbsSettings.scala
blob: 859f703d97b2c91db40bf9b61c2c7486190fc547 (plain) (tree)
1
2
3
4
5
6
7
                            
                                


                         

                        
















                                                                               
/* NSC -- new Scala compiler
 * Copyright 2005-2013 LAMP/EPFL
 * @author  Paul Phillips
 */

package scala
package reflect.internal
package settings

/** A Settings abstraction boiled out of the original highly mutable Settings
 *  class with the intention of creating an ImmutableSettings which can be used
 *  interchangeably.   Except of course without the mutants.
 */

trait AbsSettings {
  type Setting <: AbsSettingValue      // Fix to the concrete Setting type

  trait AbsSettingValue {
    type T <: Any
    def value: T
    def isDefault: Boolean
  }
}