top of page

[Chisel/scala] overloaded method apply with alternatives


Introduction

When writing code in chisel, I occasionally encounter the compilation error mentioned above.

I wasn't really sure what this meant, so I researched about it.



Detail

Let's take the following error as an example and look at it line by line:

overloaded method apply with alternatives:
[error]   [T <: chisel3.Data](elt0: T, elts: T*): chisel3.Vec[T] <and>
[error]   [T <: chisel3.Data](elts: Seq[T]): chisel3.Vec[T]
[error]  cannot be applied to (Seq[MyClass])

overloaded method apply with alternatives:

This is easier to understand if you read it as 'apply', with the quotation marks added. There are multiple overloads of the 'apply' method. They are listed below.


[T <: chisel3.Data](elt0: T, elts: T*): chisel3.Vec[T]

This says that the class chisel3.Vec[T] (where T must inherit from chisel3.Data) has an apply method that takes multiple arguments of type T.


[T <: chisel3.Data](elts: Seq[T]): chisel3.Vec[T]

Similarly, there is also an apply() that takes an argument of type Seq[T].


[error] cannot be applied to (Seq[MyClass])

And this error saying that none of the above can be applied to Seq[MyClass].



This error is usually caused by a mistake in the type specification, so if you review that, you can often get rid of the error.

Recent Posts

See All

[Chisel] Block inside "when" is always executed

Phenomenon There is an array Check whether the index variable is within the size of the array, and access the element only if it is within the size. I tried to do something common. val array = Seq.fil

[Chisel] Queue.enq.valid vs deq.valid

Overview When communicating data using a Queue, the following operations are possible: Queue.io.enq.valid: When set to false, data will not be added. Queue.io.deq.valid: When set to false, data will n

[Chisel] Don't use polymorphism

What I want to do There are multiple similar units Most of processes are the same, only some differences. Select an appropriate unit depending on the conditions and execute the process What I tried to

Let's do our best with our partner:​ ChatReminder

iphone6.5p2.png

It is an application that achieves goals in a chat format with partners.

google-play-badge.png
Download_on_the_App_Store_Badge_JP_RGB_blk_100317.png

Let's do our best with our partner:​ ChatReminder

納品:iPhone6.5①.png

It is an application that achieves goals in a chat format with partners.

google-play-badge.png
Download_on_the_App_Store_Badge_JP_RGB_blk_100317.png

Theme diary: Decide the theme and record for each genre

It is a diary application that allows you to post and record with themes and sub-themes for each genre.

google-play-badge.png
Download_on_the_App_Store_Badge_JP_RGB_blk_100317.png

Inquiries: Please contact us on Twitter

  • Twitter
bottom of page