Skip to content

Commit

Permalink
Stabilize Symbol member methods in refelction API
Browse files Browse the repository at this point in the history
  • Loading branch information
nicolasstucki committed Aug 17, 2021
1 parent 35eb5a9 commit b132fd6
Showing 1 changed file with 14 additions and 19 deletions.
33 changes: 14 additions & 19 deletions library/src/scala/quoted/Quotes.scala
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,8 @@ trait Quotes { self: runtime.QuoteUnpickler & runtime.QuoteMatching =>
* Otherwise returns the value.
*/
// TODO: deprecate in 3.1.0 and remove @experimental from valueOrAbort
// @deprecated("Use valueOrThrow", "3.1.0")
// TODO: deprecate in 3.2.0
// // @deprecated("Use valueOrThrow", "3.2.0")
def valueOrError(using FromExpr[T]): T =
val fromExpr = summon[FromExpr[T]]
def reportError =
Expand Down Expand Up @@ -3588,21 +3589,19 @@ trait Quotes { self: runtime.QuoteUnpickler & runtime.QuoteMatching =>
def declaredFields: List[Symbol]

/** Get named non-private fields declared or inherited */
// TODO: deprecate in 3.1.0 and remove @experimental from fieldMember
// @deprecated("Use fieldMember", "3.1")
// TODO: deprecate in 3.2.0
// @deprecated("Use fieldMember", "3.2.0")
def memberField(name: String): Symbol

/** Get named non-private fields declared or inherited */
@experimental
def fieldMember(name: String): Symbol

/** Get all non-private fields declared or inherited */
// TODO: deprecate in 3.1.0 and remove @experimental from fieldMembers
// @deprecated("Use fieldMembers", "3.1")
// TODO: deprecate in 3.2.0
// @deprecated("Use fieldMembers", "3.2.0")
def memberFields: List[Symbol]

/** Get all non-private fields declared or inherited */
@experimental
def fieldMembers: List[Symbol]

/** Get non-private named methods defined directly inside the class */
Expand All @@ -3612,21 +3611,19 @@ trait Quotes { self: runtime.QuoteUnpickler & runtime.QuoteMatching =>
def declaredMethods: List[Symbol]

/** Get named non-private methods declared or inherited */
// TODO: deprecate in 3.1.0 and remove @experimental from methodMember
// @deprecated("Use methodMember", "3.1")
// TODO: deprecate in 3.2.0
// @deprecated("Use methodMember", "3.2.0")
def memberMethod(name: String): List[Symbol]

/** Get named non-private methods declared or inherited */
@experimental
def methodMember(name: String): List[Symbol]

/** Get all non-private methods declared or inherited */
// TODO: deprecate in 3.1.0 and remove @experimental from methodMembers
// @deprecated("Use methodMembers", "3.1")
// TODO: deprecate in 3.2.0
// @deprecated("Use methodMembers", "3.2.0")
def memberMethods: List[Symbol]

/** Get all non-private methods declared or inherited */
@experimental
def methodMembers: List[Symbol]

/** Get non-private named methods defined directly inside the class */
Expand All @@ -3636,21 +3633,19 @@ trait Quotes { self: runtime.QuoteUnpickler & runtime.QuoteMatching =>
def declaredTypes: List[Symbol]

/** Type member with the given name directly declared in the class */
// TODO: deprecate in 3.1.0 and remove @experimental from typeMember
// @deprecated("Use typeMember", "3.1")
// TODO: deprecate in 3.2.0
// @deprecated("Use typeMember", "3.2.0")
def memberType(name: String): Symbol

/** Type member with the given name directly declared in the class */
@experimental
def typeMember(name: String): Symbol

/** Type member directly declared in the class */
// TODO: deprecate in 3.1.0 and remove @experimental from typeMembers
// @deprecated("Use typeMembers", "3.1")
// TODO: deprecate in 3.2.0
// @deprecated("Use typeMembers", "3.2.0")
def memberTypes: List[Symbol]

/** Type member directly declared in the class */
@experimental
def typeMembers: List[Symbol]

/** All members directly declared in the class */
Expand Down

0 comments on commit b132fd6

Please sign in to comment.