Problema de escopo

24 views
Skip to first unread message

Priscylla Silva

unread,
Aug 17, 2012, 5:03:36 PM8/17/12
to scal...@googlegroups.com
Olá pessoal,

Estou tentando executar feito em scala, mas ele contem um erro em um dos arquivos.
O arquivo Expression.scala contém o seguinte erro:

Description Resource Path Location Type
private trait AtomGenerator escapes its defining scope as part of type Option[see.parser.Expressions.AtomGenerator] Expression.scala /See/src/see/parser line 290 Scala Problem

Estou enviando em anexo o arquivo em anexo.
Se alguém puder me ajuda a entender e/ou resolver este erro eu agradeço bastante.

Abraços a todos,

--
Priscylla Silva
Undergraduate in Computer Science
Institute of Computing - Federal University of Alagoas - UFAL
Estrutura OPEN - http://estruturaopen.com/

Expression.scala

Thomas Sant'ana

unread,
Aug 19, 2012, 11:18:39 AM8/19/12
to scal...@googlegroups.com
Olha a mensagem parece indicar que voce está pegando o trait AtomGenerator, que é interno ao object Expression e passando para fora do contexto. 

Se voce quer retornar um generator ele tem que ser public.

Ao tentar compilar isso...

object Alpha {
  private trait Gama
}

class Alpha {
  import Alpha._
  def getGama:Option[Gama] = None
}

Temos:

error: private trait Gama escapes its defining scope as part of type Option[Alpha.Gama]
def getGama:Option[Gama] = None

Assim functiona:

object Alpha {
  trait Gama
}

class Alpha {
  import Alpha._
  def getGama:Option[Gama] = None
}

Note que isso também não funciona;

private object Alpha {
  trait Gama
}

Logo se você quer retornar o objeto/trait tem que ser public.


2012/8/17 Priscylla Silva <mss.pr...@gmail.com>
Reply all
Reply to author
Forward
0 new messages