aboutsummaryrefslogtreecommitdiff
path: root/libraries/capture_args/package.scala
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/capture_args/package.scala')
-rw-r--r--libraries/capture_args/package.scala28
1 files changed, 14 insertions, 14 deletions
diff --git a/libraries/capture_args/package.scala b/libraries/capture_args/package.scala
index f5cd219..5c96a8d 100644
--- a/libraries/capture_args/package.scala
+++ b/libraries/capture_args/package.scala
@@ -2,29 +2,29 @@ package cbt.capture_args
import scala.reflect._
import scala.reflect.macros.blackbox.Context
-case class Argument( annotations: Seq[annotation.Annotation], name: String, values: Option[Seq[String]] ){
+case class Argument( annotations: Seq[annotation.Annotation], name: String, values: Option[Seq[String]] ) {
def toSeqOption = values.map( name +: _ )
}
case class Signature( name: String, args: Seq[Argument] )
-object `package`{
- def captureArgsImplementation(c: Context): c.Tree = {
+object `package` {
+ def captureArgsImplementation( c: Context ): c.Tree = {
import c.universe._
- def literal( a: Any ) = Literal(Constant(a))
- def ident( name: String ) = Ident(TermName(name))
+ def literal( a: Any ) = Literal( Constant( a ) )
+ def ident( name: String ) = Ident( TermName( name ) )
- def findOwnerRecursive(symbol: Symbol, predicate: Symbol => Boolean): Option[Symbol] = {
- Option(symbol).flatMap{
+ def findOwnerRecursive( symbol: Symbol, predicate: Symbol => Boolean ): Option[Symbol] = {
+ Option( symbol ).flatMap {
s =>
- if(s == NoSymbol) None else if(predicate(s)) Some(s) else findOwnerRecursive(s.owner, predicate)
+ if ( s == NoSymbol ) None else if ( predicate( s ) ) Some( s ) else findOwnerRecursive( s.owner, predicate )
}
}
val method: MethodSymbol = (
- findOwnerRecursive(c.internal.enclosingOwner, _.isMethod).map(_.asMethod)
+ findOwnerRecursive( c.internal.enclosingOwner, _.isMethod ).map( _.asMethod )
orElse
- findOwnerRecursive(c.internal.enclosingOwner, _.isClass).map(_.asClass.primaryConstructor.asMethod)
+ findOwnerRecursive( c.internal.enclosingOwner, _.isClass ).map( _.asClass.primaryConstructor.asMethod )
getOrElse {
c.error(
c.enclosingPosition,
@@ -33,14 +33,14 @@ object `package`{
???
}
)
- val name = literal(method.name.decodedName.toString)
+ val name = literal( method.name.decodedName.toString )
// Note: method.paramLists requires explicitly annotated result type
- val params = method.paramLists.flatten.map(_.asTerm)
+ val params = method.paramLists.flatten.map( _.asTerm )
- val args = params.map{ s =>
+ val args = params.map { s =>
val name = literal( s.name.decodedName.toString )
val i = ident( s.name.toString )
- q"_root_.cbt.capture_args.Argument( _root_.scala.Seq( ..${s.annotations.map(_.tree)} ), $name, valueToStrings($i) )"
+ q"_root_.cbt.capture_args.Argument( _root_.scala.Seq( ..${s.annotations.map( _.tree )} ), $name, valueToStrings($i) )"
}
val tree = q"""
_root_.cbt.capture_args.Signature( name = $name, args = Seq( ..$args ) )