Open ealymbaev opened 5 years ago
Is it not possible to directly use the gobind
instead of gomobile bind
and replace/modify the generated names to your liking?
BTW we chose to include the package names in name generation because in Go, package names are important part of exported names (e.g. Go code uses fmt.Fprintf, not Fprintf), and even choosing the right package name is often discussed in various Go best-practice docs. e.g. https://blog.golang.org/package-names
I think requiring a prefix (defaulting to the package name) is ok, however being able to completely override it would be nice:
in generated header files all classes DO have prefix of package name. I tried using -prefix flag, but it adds even additional prefix to class names.
I've found myself in the situation in which I'd like to have different prefix but to do so I've got to rename the package abc
statements in all of the files.
Is there a solution or work around to this? Android doesn't have this issue?
Is there a solution around to this?
Is there a solution or work around to this? Android doesn't have this issue?
Same issue on Android. I have to do imports like this:
import lib.Lib
import database.Database
In Kotlin and Java we normally use a reverse uri for package names to avoid naming conflicts:
import at.crowdware.lib
import at.crowdware.database
Is there any progress? Now it conflicts with android's code generation strategy. In Android, the imported client doesn't have prefix while iOS has.
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhen binding an iOS framework with:
gomobile bind -target ios some-package
in generated header files all classes DO have prefix of package name. I tried using
-prefix
flag, but it adds even additional prefix to class names.I need a way to remove package name prefix, so the class name remain exactly the same as in Go code.