[ 
https://issues.apache.org/jira/browse/FLINK-1458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

John Sandiford updated FLINK-1458:
----------------------------------
    Description: 
I don't know whether this is by design or is a bug, but I am having trouble 
working with DataSet and traits in scala which is a major limitation.  A simple 
example is shown below.  

Compile time warning is 'Type Main.SimpleTrait has no fields that are visible 
from Scala Type analysis. Falling back to Java Type Analysis...'

Run time error is 'Interfaces and abstract classes are not valid types: 
interface Main$SimpleTrait'

Regards, John


 val env = ExecutionEnvironment.getExecutionEnvironment

  trait SimpleTrait {
    def contains(x: String): Boolean
  }

  class SimpleClass extends SimpleTrait {
    def contains(x: String) = true
  }

  val data: DataSet[Double] = env.fromElements(1.0, 2.0, 3.0, 4.0)

  def f(data: DataSet[Double]): DataSet[SimpleTrait] = {

    data.mapPartition(iterator => {
      Iterator(new SimpleClass)
    })
  }


  val g = f(data)
  g.print()


  env.execute("Simple example")

  was:
I don't know whether this is by design or is a bug, but I am having trouble 
working with DataSet and traits in scala which is a major limitation.  A simple 
example is shown below.  

Compile time warning is 'Type Main.SimpleTrait has no fields that are visible 
from Scala Type analysis. Falling back to Java Type Analysis...'

Run time error is 'Interfaces and abstract classes are not valid types: 
interface Main$SimpleTrait'

Regards, John


 val env = ExecutionEnvironment.getExecutionEnvironment

  trait SimpleTrait {
    def contains(x: String): Boolean
  }

  class SimpleClass extends SimpleTrait {
    def contains(x: String) = true
  }

  val data: DataSet[Double] = env.fromElements(1.0, 2.0, 3.0, 4.0)

  def f(data: DataSet[Double]): DataSet[SimpleTrait] = {

    data.mapPartition(iterator => {
      Iterator(new SimpleClass)
    })
  }


  val g = f(data)
  g.print()


> Interfaces and abstract classes are not valid types
> ---------------------------------------------------
>
>                 Key: FLINK-1458
>                 URL: https://issues.apache.org/jira/browse/FLINK-1458
>             Project: Flink
>          Issue Type: Bug
>            Reporter: John Sandiford
>
> I don't know whether this is by design or is a bug, but I am having trouble 
> working with DataSet and traits in scala which is a major limitation.  A 
> simple example is shown below.  
> Compile time warning is 'Type Main.SimpleTrait has no fields that are visible 
> from Scala Type analysis. Falling back to Java Type Analysis...'
> Run time error is 'Interfaces and abstract classes are not valid types: 
> interface Main$SimpleTrait'
> Regards, John
>  val env = ExecutionEnvironment.getExecutionEnvironment
>   trait SimpleTrait {
>     def contains(x: String): Boolean
>   }
>   class SimpleClass extends SimpleTrait {
>     def contains(x: String) = true
>   }
>   val data: DataSet[Double] = env.fromElements(1.0, 2.0, 3.0, 4.0)
>   def f(data: DataSet[Double]): DataSet[SimpleTrait] = {
>     data.mapPartition(iterator => {
>       Iterator(new SimpleClass)
>     })
>   }
>   val g = f(data)
>   g.print()
>   env.execute("Simple example")



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to