Anonymous structs have strange issues with scala and intellij in ea+44
Mark Hammons
mark.hammons at inaf.cnrs-gif.fr
Wed Feb 20 01:59:55 UTC 2019
Thanks Maurizio,
I have been trying to reproduce this on my own and I cannot get the same
behavior. An inner class of a struct with a name like anon$backend_h$555
works fine. In the case of every anonymous class in this code, scala
can't handle it, nor can intellij. I've attached the javap of the other
anonymous struct bindings I've found as well as their host classes. I
hope this helps determine the issue.
One thing I've noticed in the class files I've given you is they all end
with something like this:
Signature: #3 //
Ljava/lang/Object;Ljava/foreign/memory/Struct<Lwlroots/backend_headers/session$anon$session_h$751;>;
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=I#12,#13=I#14)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=43
column=2
)
1: #15(#16=s#17)
java.foreign.annotations.NativeStruct(
value="[${wl_signal}(destroy)](anon$session_h$751)"
)
I dunno if that's the issue or not, I'm not familiar enough with
bytecode to know that. However, I haven't been able to create an
innerclass with the anon$backend_h$114 naming scheme that has that kind
of ending information. I'll try some more tomorrow and see if I can't
produce a java example that produces the same issues.
Mark
On 2/20/19 2:14 AM, Maurizio Cimadamore wrote:
> The signature attributes look in order - actually there are some
> attributes which are not even needed, as in this case:
>
> public abstract wlroots.backend$anon$backend_h$444 events$get();
> descriptor: ()Lwlroots/backend$anon$backend_h$444;
> flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
> Signature: #36 //
> ()Lwlroots/backend$anon$backend_h$444;
>
>
> It seems like the code generator always emits a signature...
>
> What I suspect is that the tools are confused by the '$' sign, and
> they are tricked into thinking that "444" is an inner class of
> "backend_h".
>
> I will do some more experiments of this though.
>
> Thanks
> Maurizio
>
>
> On 20/02/2019 00:28, Mark Hammons wrote:
>> Sure,
>>
>> I'd like to note one thing quickly. Before I was extracting the jar
>> with an archive extracter and calling javap on the raw classfiles.
>> Just now I tried "javap -p -v -cp wlroots.jar
>> wlroots.backend.anon$backend_h$444" and it couldn't find the class,
>> but "javap -p -v -cp wlroots.jar wlroots.backend.anon.backend_h.444"
>> had it able to find the class in question. Ditto for "javap -p -v
>> -cp wlroots.jar wlroots.backend_headers.session.anon.session_h.751".
>> I'm attaching my wlroots.jar along with the javap of wlr_backend.class.
>>
>> This seems to be a recurring issue with the anonymous structs
>> generated by jextract.
>>
>> Mark
>>
>> On 2/20/19 1:04 AM, Maurizio Cimadamore wrote:
>>> Thanks,
>>> can you please also post the dump of the 'wlr_backend' struct?
>>>
>>> Maurizio
>>>
>>> On 19/02/2019 23:56, Mark Hammons wrote:
>>>> Here's the javap dump. Tell me if there's anything else I can get you.
>>>>
>>>> Mark
>>>>
>>>>
>>>> On 2/20/19 12:44 AM, Maurizio Cimadamore wrote:
>>>>>
>>>>> On 19/02/2019 23:29, Jorn Vernee wrote:
>>>>>> I tried to reproduce the problem without using jextract as well,
>>>>>> but was not able to, so the bug seems to be up to a particularity
>>>>>> of the classes generated by jextract. I'm not sure if the bug
>>>>>> should be attributed to jextract or IntelliJ though.
>>>>>
>>>>> I wonder if this could be due to some missing (or, most likely,
>>>>> just bad) Signature attributes in the resulting classfile?
>>>>>
>>>>> Would you be able to post a 'javap -v -p' dump of the classfile,
>>>>> so that we can take a look at it and look for anomalies?
>>>>>
>>>>> Maurizio
>>>>>
-------------- next part --------------
Classfile jar:file:///home/mhammons/Documents/MyProjects/waylandTest/lib/wlroots.jar!/wlroots/backend_headers/session$anon$session_h$751.class
Last modified Feb 20, 2019; size 1165 bytes
MD5 checksum 2e6cdfb7e63b6c42fb402e943bbd011e
public interface wlroots.backend_headers.session$anon$session_h$751 extends java.foreign.memory.Struct<wlroots.backend_headers.session$anon$session_h$751>
minor version: 0
major version: 52
flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: #2 // wlroots/backend_headers/session$anon$session_h$751
super_class: #5 // java/lang/Object
interfaces: 1, fields: 0, methods: 3, attributes: 3
Constant pool:
#1 = Utf8 wlroots/backend_headers/session$anon$session_h$751
#2 = Class #1 // wlroots/backend_headers/session$anon$session_h$751
#3 = Utf8 Ljava/lang/Object;Ljava/foreign/memory/Struct<Lwlroots/backend_headers/session$anon$session_h$751;>;
#4 = Utf8 java/lang/Object
#5 = Class #4 // java/lang/Object
#6 = Utf8 java/foreign/memory/Struct
#7 = Class #6 // java/foreign/memory/Struct
#8 = Utf8 Ljava/foreign/annotations/NativeLocation;
#9 = Utf8 file
#10 = Utf8 /usr/include/wlr/backend/session.h
#11 = Utf8 line
#12 = Integer 43
#13 = Utf8 column
#14 = Integer 2
#15 = Utf8 Ljava/foreign/annotations/NativeStruct;
#16 = Utf8 value
#17 = Utf8 [${wl_signal}(destroy)](anon$session_h$751)
#18 = Utf8 wlroots/backend_headers/session
#19 = Class #18 // wlroots/backend_headers/session
#20 = Utf8 anon$session_h$751
#21 = Utf8 destroy$get
#22 = Utf8 ()Lusr/include/wayland/wayland_server_core$wl_signal;
#23 = Integer 44
#24 = Integer 20
#25 = Utf8 Ljava/foreign/annotations/NativeGetter;
#26 = Utf8 destroy
#27 = Utf8 destroy$set
#28 = Utf8 (Lusr/include/wayland/wayland_server_core$wl_signal;)V
#29 = Utf8 Ljava/foreign/annotations/NativeSetter;
#30 = Utf8 destroy$ptr
#31 = Utf8 ()Ljava/foreign/memory/Pointer;
#32 = Utf8 ()Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_signal;>;
#33 = Utf8 Ljava/foreign/annotations/NativeAddressof;
#34 = Utf8 Signature
#35 = Utf8 RuntimeVisibleAnnotations
#36 = Utf8 InnerClasses
{
public abstract usr.include.wayland.wayland_server_core$wl_signal destroy$get();
descriptor: ()Lusr/include/wayland/wayland_server_core$wl_signal;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #22 // ()Lusr/include/wayland/wayland_server_core$wl_signal;
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=I#23,#13=I#24)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=44
column=20
)
1: #25(#16=s#26)
java.foreign.annotations.NativeGetter(
value="destroy"
)
public abstract void destroy$set(usr.include.wayland.wayland_server_core$wl_signal);
descriptor: (Lusr/include/wayland/wayland_server_core$wl_signal;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #28 // (Lusr/include/wayland/wayland_server_core$wl_signal;)V
RuntimeVisibleAnnotations:
0: #29(#16=s#26)
java.foreign.annotations.NativeSetter(
value="destroy"
)
public abstract java.foreign.memory.Pointer<usr.include.wayland.wayland_server_core$wl_signal> destroy$ptr();
descriptor: ()Ljava/foreign/memory/Pointer;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #32 // ()Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_signal;>;
RuntimeVisibleAnnotations:
0: #33(#16=s#26)
java.foreign.annotations.NativeAddressof(
value="destroy"
)
}
InnerClasses:
public static #20= #2 of #19; // anon$session_h$751=class wlroots/backend_headers/session$anon$session_h$751 of class wlroots/backend_headers/session
Signature: #3 // Ljava/lang/Object;Ljava/foreign/memory/Struct<Lwlroots/backend_headers/session$anon$session_h$751;>;
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=I#12,#13=I#14)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=43
column=2
)
1: #15(#16=s#17)
java.foreign.annotations.NativeStruct(
value="[${wl_signal}(destroy)](anon$session_h$751)"
)
-------------- next part --------------
Classfile jar:file:///home/mhammons/Documents/MyProjects/waylandTest/lib/wlroots.jar!/wlroots/backend_headers/session.class
Last modified Feb 20, 2019; size 3086 bytes
MD5 checksum 101bd6abff572a4df1f629ddd74f7932
public interface wlroots.backend_headers.session
minor version: 0
major version: 52
flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: #2 // wlroots/backend_headers/session
super_class: #4 // java/lang/Object
interfaces: 0, fields: 0, methods: 7, attributes: 2
Constant pool:
#1 = Utf8 wlroots/backend_headers/session
#2 = Class #1 // wlroots/backend_headers/session
#3 = Utf8 java/lang/Object
#4 = Class #3 // java/lang/Object
#5 = Utf8 wlroots/backend_headers/session$session_impl
#6 = Class #5 // wlroots/backend_headers/session$session_impl
#7 = Utf8 session_impl
#8 = Utf8 wlroots/backend_headers/session$wlr_device
#9 = Class #8 // wlroots/backend_headers/session$wlr_device
#10 = Utf8 wlr_device
#11 = Utf8 wlroots/backend_headers/session$anon$session_h$751
#12 = Class #11 // wlroots/backend_headers/session$anon$session_h$751
#13 = Utf8 anon$session_h$751
#14 = Utf8 wlroots/backend_headers/session$wlr_session
#15 = Class #14 // wlroots/backend_headers/session$wlr_session
#16 = Utf8 wlr_session
#17 = Utf8 wlr_session_create
#18 = Utf8 (Ljava/foreign/memory/Pointer;)Ljava/foreign/memory/Pointer;
#19 = Utf8 (Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_display;>;)Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;
#20 = Utf8 disp
#21 = Utf8 Ljava/foreign/annotations/NativeLocation;
#22 = Utf8 file
#23 = Utf8 /usr/include/wlr/backend/session.h
#24 = Utf8 line
#25 = Integer 58
#26 = Utf8 column
#27 = Integer 21
#28 = Utf8 Ljava/foreign/annotations/NativeFunction;
#29 = Utf8 value
#30 = Utf8 (u64:${wl_display})u64:${wlr_session}
#31 = Utf8 wlr_session_destroy
#32 = Utf8 (Ljava/foreign/memory/Pointer;)V
#33 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;)V
#34 = Utf8 session
#35 = Integer 65
#36 = Integer 6
#37 = Utf8 (u64:${wlr_session})v
#38 = Utf8 wlr_session_open_file
#39 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)I
#40 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;Ljava/foreign/memory/Pointer<Ljava/lang/Byte;>;)I
#41 = Utf8 path
#42 = Integer 77
#43 = Integer 5
#44 = Utf8 (u64:${wlr_session}u64:u8)i32
#45 = Utf8 wlr_session_close_file
#46 = Utf8 (Ljava/foreign/memory/Pointer;I)V
#47 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;I)V
#48 = Utf8 fd
#49 = Integer 82
#50 = Utf8 (u64:${wlr_session}i32)v
#51 = Utf8 wlr_session_signal_add
#52 = Utf8 (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;)V
#53 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;ILjava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_listener;>;)V
#54 = Utf8 listener
#55 = Integer 84
#56 = Utf8 (u64:${wlr_session}i32u64:${wl_listener})v
#57 = Utf8 wlr_session_change_vt
#58 = Utf8 (Ljava/foreign/memory/Pointer;I)Z
#59 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;I)Z
#60 = Utf8 vt
#61 = Integer 89
#62 = Utf8 (u64:${wlr_session}u32)u8
#63 = Utf8 wlr_session_find_gpus
#64 = Utf8 (Ljava/foreign/memory/Pointer;JLjava/foreign/memory/Pointer;)J
#65 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;JLjava/foreign/memory/Pointer<Ljava/lang/Integer;>;)J
#66 = Utf8 ret_len
#67 = Utf8 ret
#68 = Integer 91
#69 = Integer 8
#70 = Utf8 (u64:${wlr_session}u64u64:i32)u64
#71 = Utf8 Ljava/foreign/annotations/NativeHeader;
#72 = Utf8 libraries
#73 = Utf8 wlroots
#74 = Utf8 libraryPaths
#75 = Utf8 /usr/lib64/
#76 = Utf8 resolutionContext
#77 = Utf8 Lusr/include/libudev;
#78 = Utf8 Lusr/include/wayland/wayland_server_core;
#79 = Utf8 Lusr/include/wayland/wayland_util;
#80 = Utf8 globals
#81 = Utf8 Signature
#82 = Utf8 RuntimeVisibleAnnotations
#83 = Utf8 MethodParameters
#84 = Utf8 InnerClasses
{
public abstract java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session> wlr_session_create(java.foreign.memory.Pointer<usr.include.wayland.wayland_server_core$wl_display>);
descriptor: (Ljava/foreign/memory/Pointer;)Ljava/foreign/memory/Pointer;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #19 // (Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_display;>;)Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#25,#26=I#27)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=58
column=21
)
1: #28(#29=s#30)
java.foreign.annotations.NativeFunction(
value="(u64:${wl_display})u64:${wlr_session}"
)
MethodParameters:
Name Flags
disp
public abstract void wlr_session_destroy(java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session>);
descriptor: (Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #33 // (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;)V
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#35,#26=I#36)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=65
column=6
)
1: #28(#29=s#37)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_session})v"
)
MethodParameters:
Name Flags
session
public abstract int wlr_session_open_file(java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session>, java.foreign.memory.Pointer<java.lang.Byte>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #40 // (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;Ljava/foreign/memory/Pointer<Ljava/lang/Byte;>;)I
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#42,#26=I#43)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=77
column=5
)
1: #28(#29=s#44)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_session}u64:u8)i32"
)
MethodParameters:
Name Flags
session
path
public abstract void wlr_session_close_file(java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session>, int);
descriptor: (Ljava/foreign/memory/Pointer;I)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #47 // (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;I)V
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#49,#26=I#36)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=82
column=6
)
1: #28(#29=s#50)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_session}i32)v"
)
MethodParameters:
Name Flags
session
fd
public abstract void wlr_session_signal_add(java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session>, int, java.foreign.memory.Pointer<usr.include.wayland.wayland_server_core$wl_listener>);
descriptor: (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #53 // (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;ILjava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_listener;>;)V
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#55,#26=I#36)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=84
column=6
)
1: #28(#29=s#56)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_session}i32u64:${wl_listener})v"
)
MethodParameters:
Name Flags
session
fd
listener
public abstract boolean wlr_session_change_vt(java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session>, int);
descriptor: (Ljava/foreign/memory/Pointer;I)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #59 // (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;I)Z
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#61,#26=I#36)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=89
column=6
)
1: #28(#29=s#62)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_session}u32)u8"
)
MethodParameters:
Name Flags
session
vt
public abstract long wlr_session_find_gpus(java.foreign.memory.Pointer<wlroots.backend_headers.session$wlr_session>, long, java.foreign.memory.Pointer<java.lang.Integer>);
descriptor: (Ljava/foreign/memory/Pointer;JLjava/foreign/memory/Pointer;)J
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #65 // (Ljava/foreign/memory/Pointer<Lwlroots/backend_headers/session$wlr_session;>;JLjava/foreign/memory/Pointer<Ljava/lang/Integer;>;)J
RuntimeVisibleAnnotations:
0: #21(#22=s#23,#24=I#68,#26=I#69)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/backend/session.h"
line=91
column=8
)
1: #28(#29=s#70)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_session}u64u64:i32)u64"
)
MethodParameters:
Name Flags
session
ret_len
ret
}
InnerClasses:
public static #7= #6 of #2; // session_impl=class wlroots/backend_headers/session$session_impl of class wlroots/backend_headers/session
public static #10= #9 of #2; // wlr_device=class wlroots/backend_headers/session$wlr_device of class wlroots/backend_headers/session
public static #13= #12 of #2; // anon$session_h$751=class wlroots/backend_headers/session$anon$session_h$751 of class wlroots/backend_headers/session
public static #16= #15 of #2; // wlr_session=class wlroots/backend_headers/session$wlr_session of class wlroots/backend_headers/session
RuntimeVisibleAnnotations:
0: #71(#41=s#23,#72=[s#73],#74=[s#75],#76=[c#77,c#78,c#79],#80=[])
java.foreign.annotations.NativeHeader(
path="/usr/include/wlr/backend/session.h"
libraries=["wlroots"]
libraryPaths=["/usr/lib64/"]
resolutionContext=[class Lusr/include/libudev;,class Lusr/include/wayland/wayland_server_core;,class Lusr/include/wayland/wayland_util;]
globals=[]
)
-------------- next part --------------
Classfile jar:file:///home/mhammons/Documents/MyProjects/waylandTest/lib/wlroots.jar!/wlroots/wlr_renderer.class
Last modified Feb 20, 2019; size 7916 bytes
MD5 checksum 49b06a0180ba1b19baa4507bc5457a8b
public interface wlroots.wlr_renderer
minor version: 0
major version: 52
flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: #2 // wlroots/wlr_renderer
super_class: #4 // java/lang/Object
interfaces: 0, fields: 0, methods: 21, attributes: 2
Constant pool:
#1 = Utf8 wlroots/wlr_renderer
#2 = Class #1 // wlroots/wlr_renderer
#3 = Utf8 java/lang/Object
#4 = Class #3 // java/lang/Object
#5 = Utf8 WLR_RENDERER_READ_PIXELS_Y_INVERT
#6 = Utf8 ()I
#7 = Integer 1
#8 = Utf8 wlroots/wlr_renderer$wlr_renderer_read_pixels_flags
#9 = Class #8 // wlroots/wlr_renderer$wlr_renderer_read_pixels_flags
#10 = Utf8 wlr_renderer_read_pixels_flags
#11 = Utf8 wlroots/wlr_renderer$wlr_renderer_impl
#12 = Class #11 // wlroots/wlr_renderer$wlr_renderer_impl
#13 = Utf8 wlr_renderer_impl
#14 = Utf8 wlroots/wlr_renderer$anon$wlr_renderer_h$616
#15 = Class #14 // wlroots/wlr_renderer$anon$wlr_renderer_h$616
#16 = Utf8 anon$wlr_renderer_h$616
#17 = Utf8 wlroots/wlr_renderer$wlr_renderer
#18 = Class #17 // wlroots/wlr_renderer$wlr_renderer
#19 = Utf8 wlr_renderer
#20 = Utf8 wlr_renderer_autocreate
#21 = Utf8 (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;I)Ljava/foreign/memory/Pointer;
#22 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/egl$wlr_egl;>;ILjava/foreign/memory/Pointer<*>;Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;I)Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;
#23 = Utf8 egl
#24 = Utf8 platform
#25 = Utf8 remote_display
#26 = Utf8 config_attribs
#27 = Utf8 visual_id
#28 = Utf8 Ljava/foreign/annotations/NativeLocation;
#29 = Utf8 file
#30 = Utf8 /usr/include/wlr/render/wlr_renderer.h
#31 = Utf8 line
#32 = Integer 32
#33 = Utf8 column
#34 = Integer 22
#35 = Utf8 Ljava/foreign/annotations/NativeFunction;
#36 = Utf8 value
#37 = Utf8 (u64:${wlr_egl}u32u64:vu64:i32i32)u64:${wlr_renderer}
#38 = Utf8 wlr_renderer_begin
#39 = Utf8 (Ljava/foreign/memory/Pointer;II)V
#40 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;II)V
#41 = Utf8 r
#42 = Utf8 width
#43 = Utf8 height
#44 = Integer 35
#45 = Integer 6
#46 = Utf8 (u64:${wlr_renderer}i32i32)v
#47 = Utf8 wlr_renderer_end
#48 = Utf8 (Ljava/foreign/memory/Pointer;)V
#49 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;)V
#50 = Integer 36
#51 = Utf8 (u64:${wlr_renderer})v
#52 = Utf8 wlr_renderer_clear
#53 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
#54 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
#55 = Utf8 color
#56 = Integer 37
#57 = Utf8 (u64:${wlr_renderer}u64:f32)v
#58 = Utf8 wlr_renderer_scissor
#59 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/types/wlr_box$wlr_box;>;)V
#60 = Utf8 box
#61 = Integer 43
#62 = Utf8 (u64:${wlr_renderer}u64:${wlr_box})v
#63 = Utf8 wlr_render_texture
#64 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;IIF)Z
#65 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/wlr_texture$wlr_texture;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;IIF)Z
#66 = Utf8 texture
#67 = Utf8 projection
#68 = Utf8 x
#69 = Utf8 y
#70 = Utf8 alpha
#71 = Integer 47
#72 = Utf8 (u64:${wlr_renderer}u64:${wlr_texture}u64:f32i32i32f32)u8
#73 = Utf8 wlr_render_texture_with_matrix
#74 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;F)Z
#75 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/wlr_texture$wlr_texture;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;F)Z
#76 = Utf8 matrix
#77 = Integer 52
#78 = Utf8 (u64:${wlr_renderer}u64:${wlr_texture}u64:f32f32)u8
#79 = Utf8 wlr_render_rect
#80 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
#81 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/types/wlr_box$wlr_box;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
#82 = Integer 57
#83 = Utf8 (u64:${wlr_renderer}u64:${wlr_box}u64:f32u64:f32)v
#84 = Utf8 wlr_render_quad_with_matrix
#85 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
#86 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
#87 = Integer 62
#88 = Utf8 (u64:${wlr_renderer}u64:f32u64:f32)v
#89 = Utf8 wlr_render_ellipse
#90 = Integer 67
#91 = Utf8 wlr_render_ellipse_with_matrix
#92 = Integer 72
#93 = Utf8 wlr_renderer_get_formats
#94 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)Ljava/foreign/memory/Pointer;
#95 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Long;>;)Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;
#96 = Utf8 len
#97 = Integer 77
#98 = Integer 27
#99 = Utf8 (u64:${wlr_renderer}u64:u64)u64:i32
#100 = Utf8 wlr_renderer_resource_is_wl_drm_buffer
#101 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)Z
#102 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server$wl_resource;>;)Z
#103 = Utf8 renderer
#104 = Utf8 buffer
#105 = Integer 82
#106 = Utf8 (u64:${wlr_renderer}u64:${wl_resource})u8
#107 = Utf8 wlr_renderer_wl_drm_buffer_get_size
#108 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server$wl_resource;>;Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;)V
#109 = Integer 87
#110 = Utf8 (u64:${wlr_renderer}u64:${wl_resource}u64:i32u64:i32)v
#111 = Utf8 wlr_renderer_get_dmabuf_formats
#112 = Utf8 (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)I
#113 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<+Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;>;)I
#114 = Utf8 formats
#115 = Integer 92
#116 = Integer 5
#117 = Utf8 (u64:${wlr_renderer}u64:u64:i32)i32
#118 = Utf8 wlr_renderer_get_dmabuf_modifiers
#119 = Utf8 (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;)I
#120 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;ILjava/foreign/memory/Pointer<+Ljava/foreign/memory/Pointer<Ljava/lang/Long;>;>;)I
#121 = Utf8 format
#122 = Utf8 modifiers
#123 = Integer 97
#124 = Utf8 (u64:${wlr_renderer}i32u64:u64:u64)i32
#125 = Utf8 wlr_renderer_read_pixels
#126 = Utf8 (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;IIIIIIILjava/foreign/memory/Pointer;)Z
#127 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;ILjava/foreign/memory/Pointer<Ljava/lang/Integer;>;IIIIIIILjava/foreign/memory/Pointer<*>;)Z
#128 = Utf8 fmt
#129 = Utf8 flags
#130 = Utf8 stride
#131 = Utf8 src_x
#132 = Utf8 src_y
#133 = Utf8 dst_x
#134 = Utf8 dst_y
#135 = Utf8 data
#136 = Integer 106
#137 = Utf8 (u64:${wlr_renderer}i32u64:u32u32u32u32u32u32u32u32u64:v)u8
#138 = Utf8 wlr_renderer_format_supported
#139 = Utf8 (Ljava/foreign/memory/Pointer;I)Z
#140 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;I)Z
#141 = Integer 112
#142 = Utf8 (u64:${wlr_renderer}i32)u8
#143 = Utf8 wlr_renderer_init_wl_display
#144 = Utf8 (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_display;>;)V
#145 = Utf8 wl_display
#146 = Integer 114
#147 = Utf8 (u64:${wlr_renderer}u64:${wl_display})v
#148 = Utf8 wlr_renderer_destroy
#149 = Integer 119
#150 = Utf8 Ljava/foreign/annotations/NativeHeader;
#151 = Utf8 path
#152 = Utf8 libraries
#153 = Utf8 wlroots
#154 = Utf8 libraryPaths
#155 = Utf8 /usr/lib64/
#156 = Utf8 resolutionContext
#157 = Utf8 Lwlroots/types/wlr_box;
#158 = Utf8 Lusr/include/wayland/wayland_server_core;
#159 = Utf8 Lwlroots/wlr_texture;
#160 = Utf8 Lusr/include/wayland/wayland_server;
#161 = Utf8 Lwlroots/egl;
#162 = Utf8 globals
#163 = Utf8 Code
#164 = Utf8 Signature
#165 = Utf8 RuntimeVisibleAnnotations
#166 = Utf8 MethodParameters
#167 = Utf8 InnerClasses
{
public int WLR_RENDERER_READ_PIXELS_Y_INVERT();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: ldc #7 // int 1
2: ireturn
public abstract java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer> wlr_renderer_autocreate(java.foreign.memory.Pointer<wlroots.egl$wlr_egl>, int, java.foreign.memory.Pointer<?>, java.foreign.memory.Pointer<java.lang.Integer>, int);
descriptor: (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;I)Ljava/foreign/memory/Pointer;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #22 // (Ljava/foreign/memory/Pointer<Lwlroots/egl$wlr_egl;>;ILjava/foreign/memory/Pointer<*>;Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;I)Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#32,#33=I#34)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=32
column=22
)
1: #35(#36=s#37)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_egl}u32u64:vu64:i32i32)u64:${wlr_renderer}"
)
MethodParameters:
Name Flags
egl
platform
remote_display
config_attribs
visual_id
public abstract void wlr_renderer_begin(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, int, int);
descriptor: (Ljava/foreign/memory/Pointer;II)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #40 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;II)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#44,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=35
column=6
)
1: #35(#36=s#46)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}i32i32)v"
)
MethodParameters:
Name Flags
r
width
height
public abstract void wlr_renderer_end(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>);
descriptor: (Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #49 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#50,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=36
column=6
)
1: #35(#36=s#51)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer})v"
)
MethodParameters:
Name Flags
r
public abstract void wlr_renderer_clear(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<java.lang.Float>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #54 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#56,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=37
column=6
)
1: #35(#36=s#57)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:f32)v"
)
MethodParameters:
Name Flags
r
color
public abstract void wlr_renderer_scissor(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<wlroots.types.wlr_box$wlr_box>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #59 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/types/wlr_box$wlr_box;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#61,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=43
column=6
)
1: #35(#36=s#62)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wlr_box})v"
)
MethodParameters:
Name Flags
r
box
public abstract boolean wlr_render_texture(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<wlroots.wlr_texture$wlr_texture>, java.foreign.memory.Pointer<java.lang.Float>, int, int, float);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;IIF)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #65 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/wlr_texture$wlr_texture;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;IIF)Z
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#71,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=47
column=6
)
1: #35(#36=s#72)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wlr_texture}u64:f32i32i32f32)u8"
)
MethodParameters:
Name Flags
r
texture
projection
x
y
alpha
public abstract boolean wlr_render_texture_with_matrix(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<wlroots.wlr_texture$wlr_texture>, java.foreign.memory.Pointer<java.lang.Float>, float);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;F)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #75 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/wlr_texture$wlr_texture;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;F)Z
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#77,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=52
column=6
)
1: #35(#36=s#78)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wlr_texture}u64:f32f32)u8"
)
MethodParameters:
Name Flags
r
texture
matrix
alpha
public abstract void wlr_render_rect(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<wlroots.types.wlr_box$wlr_box>, java.foreign.memory.Pointer<java.lang.Float>, java.foreign.memory.Pointer<java.lang.Float>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #81 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/types/wlr_box$wlr_box;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#82,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=57
column=6
)
1: #35(#36=s#83)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wlr_box}u64:f32u64:f32)v"
)
MethodParameters:
Name Flags
r
box
color
projection
public abstract void wlr_render_quad_with_matrix(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<java.lang.Float>, java.foreign.memory.Pointer<java.lang.Float>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #86 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#87,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=62
column=6
)
1: #35(#36=s#88)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:f32u64:f32)v"
)
MethodParameters:
Name Flags
r
color
matrix
public abstract void wlr_render_ellipse(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<wlroots.types.wlr_box$wlr_box>, java.foreign.memory.Pointer<java.lang.Float>, java.foreign.memory.Pointer<java.lang.Float>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #81 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lwlroots/types/wlr_box$wlr_box;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#90,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=67
column=6
)
1: #35(#36=s#83)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wlr_box}u64:f32u64:f32)v"
)
MethodParameters:
Name Flags
r
box
color
projection
public abstract void wlr_render_ellipse_with_matrix(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<java.lang.Float>, java.foreign.memory.Pointer<java.lang.Float>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #86 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;Ljava/foreign/memory/Pointer<Ljava/lang/Float;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#92,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=72
column=6
)
1: #35(#36=s#88)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:f32u64:f32)v"
)
MethodParameters:
Name Flags
r
color
matrix
public abstract java.foreign.memory.Pointer<java.lang.Integer> wlr_renderer_get_formats(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<java.lang.Long>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)Ljava/foreign/memory/Pointer;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #95 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Long;>;)Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#97,#33=I#98)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=77
column=27
)
1: #35(#36=s#99)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:u64)u64:i32"
)
MethodParameters:
Name Flags
r
len
public abstract boolean wlr_renderer_resource_is_wl_drm_buffer(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<usr.include.wayland.wayland_server$wl_resource>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #102 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server$wl_resource;>;)Z
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#105,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=82
column=6
)
1: #35(#36=s#106)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wl_resource})u8"
)
MethodParameters:
Name Flags
renderer
buffer
public abstract void wlr_renderer_wl_drm_buffer_get_size(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<usr.include.wayland.wayland_server$wl_resource>, java.foreign.memory.Pointer<java.lang.Integer>, java.foreign.memory.Pointer<java.lang.Integer>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #108 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server$wl_resource;>;Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#109,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=87
column=6
)
1: #35(#36=s#110)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wl_resource}u64:i32u64:i32)v"
)
MethodParameters:
Name Flags
renderer
buffer
width
height
public abstract int wlr_renderer_get_dmabuf_formats(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<? extends java.foreign.memory.Pointer<java.lang.Integer>>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #113 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<+Ljava/foreign/memory/Pointer<Ljava/lang/Integer;>;>;)I
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#115,#33=I#116)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=92
column=5
)
1: #35(#36=s#117)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:u64:i32)i32"
)
MethodParameters:
Name Flags
renderer
formats
public abstract int wlr_renderer_get_dmabuf_modifiers(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, int, java.foreign.memory.Pointer<? extends java.foreign.memory.Pointer<java.lang.Long>>);
descriptor: (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;)I
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #120 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;ILjava/foreign/memory/Pointer<+Ljava/foreign/memory/Pointer<Ljava/lang/Long;>;>;)I
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#123,#33=I#116)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=97
column=5
)
1: #35(#36=s#124)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}i32u64:u64:u64)i32"
)
MethodParameters:
Name Flags
renderer
format
modifiers
public abstract boolean wlr_renderer_read_pixels(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, int, java.foreign.memory.Pointer<java.lang.Integer>, int, int, int, int, int, int, int, java.foreign.memory.Pointer<?>);
descriptor: (Ljava/foreign/memory/Pointer;ILjava/foreign/memory/Pointer;IIIIIIILjava/foreign/memory/Pointer;)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #127 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;ILjava/foreign/memory/Pointer<Ljava/lang/Integer;>;IIIIIIILjava/foreign/memory/Pointer<*>;)Z
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#136,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=106
column=6
)
1: #35(#36=s#137)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}i32u64:u32u32u32u32u32u32u32u32u64:v)u8"
)
MethodParameters:
Name Flags
r
fmt
flags
stride
width
height
src_x
src_y
dst_x
dst_y
data
public abstract boolean wlr_renderer_format_supported(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, int);
descriptor: (Ljava/foreign/memory/Pointer;I)Z
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #140 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;I)Z
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#141,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=112
column=6
)
1: #35(#36=s#142)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}i32)u8"
)
MethodParameters:
Name Flags
r
fmt
public abstract void wlr_renderer_init_wl_display(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>, java.foreign.memory.Pointer<usr.include.wayland.wayland_server_core$wl_display>);
descriptor: (Ljava/foreign/memory/Pointer;Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #144 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_display;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#146,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=114
column=6
)
1: #35(#36=s#147)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer}u64:${wl_display})v"
)
MethodParameters:
Name Flags
r
wl_display
public abstract void wlr_renderer_destroy(java.foreign.memory.Pointer<wlroots.wlr_renderer$wlr_renderer>);
descriptor: (Ljava/foreign/memory/Pointer;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #49 // (Ljava/foreign/memory/Pointer<Lwlroots/wlr_renderer$wlr_renderer;>;)V
RuntimeVisibleAnnotations:
0: #28(#29=s#30,#31=I#149,#33=I#45)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=119
column=6
)
1: #35(#36=s#51)
java.foreign.annotations.NativeFunction(
value="(u64:${wlr_renderer})v"
)
MethodParameters:
Name Flags
renderer
}
InnerClasses:
public static #10= #9 of #2; // wlr_renderer_read_pixels_flags=class wlroots/wlr_renderer$wlr_renderer_read_pixels_flags of class wlroots/wlr_renderer
public static #13= #12 of #2; // wlr_renderer_impl=class wlroots/wlr_renderer$wlr_renderer_impl of class wlroots/wlr_renderer
public static #16= #15 of #2; // anon$wlr_renderer_h$616=class wlroots/wlr_renderer$anon$wlr_renderer_h$616 of class wlroots/wlr_renderer
public static #19= #18 of #2; // wlr_renderer=class wlroots/wlr_renderer$wlr_renderer of class wlroots/wlr_renderer
RuntimeVisibleAnnotations:
0: #150(#151=s#30,#152=[s#153],#154=[s#155],#156=[c#157,c#158,c#159,c#160,c#161],#162=[])
java.foreign.annotations.NativeHeader(
path="/usr/include/wlr/render/wlr_renderer.h"
libraries=["wlroots"]
libraryPaths=["/usr/lib64/"]
resolutionContext=[class Lwlroots/types/wlr_box;,class Lusr/include/wayland/wayland_server_core;,class Lwlroots/wlr_texture;,class Lusr/include/wayland/wayland_server;,class Lwlroots/egl;]
globals=[]
)
-------------- next part --------------
Classfile jar:file:///home/mhammons/Documents/MyProjects/waylandTest/lib/wlroots.jar!/wlroots/wlr_renderer$anon$wlr_renderer_h$616.class
Last modified Feb 20, 2019; size 1156 bytes
MD5 checksum 1755819c6b60d68c739edd9cc6100035
public interface wlroots.wlr_renderer$anon$wlr_renderer_h$616 extends java.foreign.memory.Struct<wlroots.wlr_renderer$anon$wlr_renderer_h$616>
minor version: 0
major version: 52
flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
this_class: #2 // wlroots/wlr_renderer$anon$wlr_renderer_h$616
super_class: #5 // java/lang/Object
interfaces: 1, fields: 0, methods: 3, attributes: 3
Constant pool:
#1 = Utf8 wlroots/wlr_renderer$anon$wlr_renderer_h$616
#2 = Class #1 // wlroots/wlr_renderer$anon$wlr_renderer_h$616
#3 = Utf8 Ljava/lang/Object;Ljava/foreign/memory/Struct<Lwlroots/wlr_renderer$anon$wlr_renderer_h$616;>;
#4 = Utf8 java/lang/Object
#5 = Class #4 // java/lang/Object
#6 = Utf8 java/foreign/memory/Struct
#7 = Class #6 // java/foreign/memory/Struct
#8 = Utf8 Ljava/foreign/annotations/NativeLocation;
#9 = Utf8 file
#10 = Utf8 /usr/include/wlr/render/wlr_renderer.h
#11 = Utf8 line
#12 = Integer 27
#13 = Utf8 column
#14 = Integer 2
#15 = Utf8 Ljava/foreign/annotations/NativeStruct;
#16 = Utf8 value
#17 = Utf8 [${wl_signal}(destroy)](anon$wlr_renderer_h$616)
#18 = Utf8 wlroots/wlr_renderer
#19 = Class #18 // wlroots/wlr_renderer
#20 = Utf8 anon$wlr_renderer_h$616
#21 = Utf8 destroy$get
#22 = Utf8 ()Lusr/include/wayland/wayland_server_core$wl_signal;
#23 = Integer 28
#24 = Integer 20
#25 = Utf8 Ljava/foreign/annotations/NativeGetter;
#26 = Utf8 destroy
#27 = Utf8 destroy$set
#28 = Utf8 (Lusr/include/wayland/wayland_server_core$wl_signal;)V
#29 = Utf8 Ljava/foreign/annotations/NativeSetter;
#30 = Utf8 destroy$ptr
#31 = Utf8 ()Ljava/foreign/memory/Pointer;
#32 = Utf8 ()Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_signal;>;
#33 = Utf8 Ljava/foreign/annotations/NativeAddressof;
#34 = Utf8 Signature
#35 = Utf8 RuntimeVisibleAnnotations
#36 = Utf8 InnerClasses
{
public abstract usr.include.wayland.wayland_server_core$wl_signal destroy$get();
descriptor: ()Lusr/include/wayland/wayland_server_core$wl_signal;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #22 // ()Lusr/include/wayland/wayland_server_core$wl_signal;
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=I#23,#13=I#24)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=28
column=20
)
1: #25(#16=s#26)
java.foreign.annotations.NativeGetter(
value="destroy"
)
public abstract void destroy$set(usr.include.wayland.wayland_server_core$wl_signal);
descriptor: (Lusr/include/wayland/wayland_server_core$wl_signal;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #28 // (Lusr/include/wayland/wayland_server_core$wl_signal;)V
RuntimeVisibleAnnotations:
0: #29(#16=s#26)
java.foreign.annotations.NativeSetter(
value="destroy"
)
public abstract java.foreign.memory.Pointer<usr.include.wayland.wayland_server_core$wl_signal> destroy$ptr();
descriptor: ()Ljava/foreign/memory/Pointer;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Signature: #32 // ()Ljava/foreign/memory/Pointer<Lusr/include/wayland/wayland_server_core$wl_signal;>;
RuntimeVisibleAnnotations:
0: #33(#16=s#26)
java.foreign.annotations.NativeAddressof(
value="destroy"
)
}
InnerClasses:
public static #20= #2 of #19; // anon$wlr_renderer_h$616=class wlroots/wlr_renderer$anon$wlr_renderer_h$616 of class wlroots/wlr_renderer
Signature: #3 // Ljava/lang/Object;Ljava/foreign/memory/Struct<Lwlroots/wlr_renderer$anon$wlr_renderer_h$616;>;
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=I#12,#13=I#14)
java.foreign.annotations.NativeLocation(
file="/usr/include/wlr/render/wlr_renderer.h"
line=27
column=2
)
1: #15(#16=s#17)
java.foreign.annotations.NativeStruct(
value="[${wl_signal}(destroy)](anon$wlr_renderer_h$616)"
)
More information about the panama-dev
mailing list