Tasmota/lib/libesp32/berry_matter/src/solidify/solidified_Matter_MessageHandler.h
2023-02-12 20:45:28 +01:00

586 lines
25 KiB
C

/* Solidification of Matter_MessageHandler.h */
/********************************************************************\
* Generated code, don't edit *
\********************************************************************/
#include "be_constobj.h"
extern const bclass be_class_Matter_MessageHandler;
/********************************************************************
** Solidified function: send_response
********************************************************************/
be_local_closure(Matter_MessageHandler_send_response, /* name */
be_nested_proto(
11, /* nstack */
5, /* argc */
2, /* varg */
0, /* has upvals */
NULL, /* no upvals */
0, /* has sup protos */
NULL, /* no sub protos */
1, /* has constants */
( &(const bvalue[ 2]) { /* constants */
/* K0 */ be_nested_str_weak(device),
/* K1 */ be_nested_str_weak(msg_send),
}),
be_str_weak(send_response),
&be_const_str_solidified,
( &(const binstruction[ 8]) { /* code */
0x88140100, // 0000 GETMBR R5 R0 K0
0x8C140B01, // 0001 GETMET R5 R5 K1
0x5C1C0200, // 0002 MOVE R7 R1
0x5C200400, // 0003 MOVE R8 R2
0x5C240600, // 0004 MOVE R9 R3
0x5C280800, // 0005 MOVE R10 R4
0x7C140A00, // 0006 CALL R5 5
0x80000000, // 0007 RET 0
})
)
);
/*******************************************************************/
/********************************************************************
** Solidified function: msg_received
********************************************************************/
be_local_closure(Matter_MessageHandler_msg_received, /* name */
be_nested_proto(
17, /* nstack */
4, /* argc */
2, /* varg */
0, /* has upvals */
NULL, /* no upvals */
0, /* has sup protos */
NULL, /* no sub protos */
1, /* has constants */
( &(const bvalue[59]) { /* constants */
/* K0 */ be_nested_str_weak(string),
/* K1 */ be_nested_str_weak(tasmota),
/* K2 */ be_nested_str_weak(log),
/* K3 */ be_nested_str_weak(MTR_X3A_X20MessageHandler_X3A_X3Amsg_received_X20raw_X3D),
/* K4 */ be_nested_str_weak(tohex),
/* K5 */ be_nested_str_weak(matter),
/* K6 */ be_nested_str_weak(Frame),
/* K7 */ be_nested_str_weak(decode_header),
/* K8 */ be_nested_str_weak(local_session_id),
/* K9 */ be_const_int(0),
/* K10 */ be_nested_str_weak(sec_sesstype),
/* K11 */ be_nested_str_weak(device),
/* K12 */ be_nested_str_weak(sessions),
/* K13 */ be_nested_str_weak(find_session_source_id_unsecure),
/* K14 */ be_nested_str_weak(source_node_id),
/* K15 */ be_nested_str_weak(MTR_X3A_X20find_X20session_X20by_X20source_node_id_X20_X3D_X20),
/* K16 */ be_nested_str_weak(session_id_X20_X3D_X20),
/* K17 */ be_const_int(3),
/* K18 */ be_nested_str_weak(session),
/* K19 */ be_nested_str_weak(counter_rcv),
/* K20 */ be_nested_str_weak(validate),
/* K21 */ be_nested_str_weak(message_counter),
/* K22 */ be_nested_str_weak(format),
/* K23 */ be_nested_str_weak(MTR_X3A_X20rejected_X20duplicate_X20unencrypted_X20message_X20_X3D_X20_X25i_X20ref_X20_X3D_X20_X25i),
/* K24 */ be_nested_str_weak(val),
/* K25 */ be_nested_str_weak(decode_payload),
/* K26 */ be_nested_str_weak(packet_ack),
/* K27 */ be_nested_str_weak(ack_message_counter),
/* K28 */ be_nested_str_weak(opcode),
/* K29 */ be_nested_str_weak(get_opcode_name),
/* K30 */ be_nested_str_weak(0x_X2502X),
/* K31 */ be_nested_str_weak(MTR_X3A_X20_X3EReceived_X20_X20_X20_X20_X20_X20_X25s_X20from_X20_X5B_X25s_X5D_X3A_X25i),
/* K32 */ be_const_int(2),
/* K33 */ be_nested_str_weak(commissioning),
/* K34 */ be_nested_str_weak(process_incoming),
/* K35 */ be_nested_str_weak(MTR_X3A_X20decode_X20header_X3A_X20local_session_id_X3D_X25i_X20message_counter_X3D_X25i),
/* K36 */ be_nested_str_weak(get_session_by_local_session_id),
/* K37 */ be_nested_str_weak(MTR_X3A_X20unknown_X20local_session_id_X20),
/* K38 */ be_nested_str_weak(MTR_X3A_X20frame_X3D),
/* K39 */ be_nested_str_weak(inspect),
/* K40 */ be_nested_str_weak(MTR_X3A_X20rejected_X20duplicate_X20encrypted_X20message_X20_X3D_X20),
/* K41 */ be_nested_str_weak(_X20counter_X3D),
/* K42 */ be_nested_str_weak(decrypt),
/* K43 */ be_nested_str_weak(raw),
/* K44 */ be_nested_str_weak(payload_idx),
/* K45 */ be_const_int(1),
/* K46 */ be_nested_str_weak(MTR_X3A_X20idx_X3D_X25i_X20clear_X3D_X25s),
/* K47 */ be_nested_str_weak(MTR_X3A_X20decrypted_X20message_X3A_X20protocol_id_X3A),
/* K48 */ be_nested_str_weak(protocol_id),
/* K49 */ be_nested_str_weak(_X20opcode_X3D),
/* K50 */ be_nested_str_weak(_X20exchange_id),
/* K51 */ be_nested_str_weak(exchange_id),
/* K52 */ be_nested_str_weak(MTR_X3A_X20PROTOCOL_ID_SECURE_CHANNEL_X20),
/* K53 */ be_nested_str_weak(im),
/* K54 */ be_nested_str_weak(MTR_X3A_X20ignoring_X20unhandled_X20protocol_id_X3A),
/* K55 */ be_nested_str_weak(MTR_X3A_X20MessageHandler_X3A_X3Amsg_received_X20exception_X3A_X20),
/* K56 */ be_nested_str_weak(_X3B),
/* K57 */ be_nested_str_weak(debug),
/* K58 */ be_nested_str_weak(traceback),
}),
be_str_weak(msg_received),
&be_const_str_solidified,
( &(const binstruction[291]) { /* code */
0xA4120000, // 0000 IMPORT R4 K0
0xA802010A, // 0001 EXBLK 0 #010D
0xB8160200, // 0002 GETNGBL R5 K1
0x8C140B02, // 0003 GETMET R5 R5 K2
0x8C1C0304, // 0004 GETMET R7 R1 K4
0x7C1C0200, // 0005 CALL R7 1
0x001E0607, // 0006 ADD R7 K3 R7
0x54220003, // 0007 LDINT R8 4
0x7C140600, // 0008 CALL R5 3
0xB8160A00, // 0009 GETNGBL R5 K5
0x8C140B06, // 000A GETMET R5 R5 K6
0x5C1C0000, // 000B MOVE R7 R0
0x5C200200, // 000C MOVE R8 R1
0x5C240400, // 000D MOVE R9 R2
0x5C280600, // 000E MOVE R10 R3
0x7C140A00, // 000F CALL R5 5
0x8C180B07, // 0010 GETMET R6 R5 K7
0x7C180200, // 0011 CALL R6 1
0x5C1C0C00, // 0012 MOVE R7 R6
0x741E0002, // 0013 JMPT R7 #0017
0x501C0000, // 0014 LDBOOL R7 0 0
0xA8040001, // 0015 EXBLK 1 1
0x80040E00, // 0016 RET 1 R7
0x881C0B08, // 0017 GETMBR R7 R5 K8
0x1C1C0F09, // 0018 EQ R7 R7 K9
0x781E0057, // 0019 JMPF R7 #0072
0x881C0B0A, // 001A GETMBR R7 R5 K10
0x1C1C0F09, // 001B EQ R7 R7 K9
0x781E0054, // 001C JMPF R7 #0072
0x881C010B, // 001D GETMBR R7 R0 K11
0x881C0F0C, // 001E GETMBR R7 R7 K12
0x8C1C0F0D, // 001F GETMET R7 R7 K13
0x88240B0E, // 0020 GETMBR R9 R5 K14
0x542A0059, // 0021 LDINT R10 90
0x7C1C0600, // 0022 CALL R7 3
0xB8220200, // 0023 GETNGBL R8 K1
0x8C201102, // 0024 GETMET R8 R8 K2
0x60280008, // 0025 GETGBL R10 G8
0x882C0B0E, // 0026 GETMBR R11 R5 K14
0x7C280200, // 0027 CALL R10 1
0x002A1E0A, // 0028 ADD R10 K15 R10
0x00281510, // 0029 ADD R10 R10 K16
0x602C0008, // 002A GETGBL R11 G8
0x88300F08, // 002B GETMBR R12 R7 K8
0x7C2C0200, // 002C CALL R11 1
0x0028140B, // 002D ADD R10 R10 R11
0x582C0011, // 002E LDCONST R11 K17
0x7C200600, // 002F CALL R8 3
0x90162407, // 0030 SETMBR R5 K18 R7
0x88200113, // 0031 GETMBR R8 R0 K19
0x8C201114, // 0032 GETMET R8 R8 K20
0x88280B15, // 0033 GETMBR R10 R5 K21
0x502C0000, // 0034 LDBOOL R11 0 0
0x7C200600, // 0035 CALL R8 3
0x7422000D, // 0036 JMPT R8 #0045
0xB8220200, // 0037 GETNGBL R8 K1
0x8C201102, // 0038 GETMET R8 R8 K2
0x8C280916, // 0039 GETMET R10 R4 K22
0x58300017, // 003A LDCONST R12 K23
0x88340B15, // 003B GETMBR R13 R5 K21
0x88380113, // 003C GETMBR R14 R0 K19
0x8C381D18, // 003D GETMET R14 R14 K24
0x7C380200, // 003E CALL R14 1
0x7C280800, // 003F CALL R10 4
0x582C0011, // 0040 LDCONST R11 K17
0x7C200600, // 0041 CALL R8 3
0x50200000, // 0042 LDBOOL R8 0 0
0xA8040001, // 0043 EXBLK 1 1
0x80041000, // 0044 RET 1 R8
0x8C200B19, // 0045 GETMET R8 R5 K25
0x7C200200, // 0046 CALL R8 1
0x74220002, // 0047 JMPT R8 #004B
0x50200000, // 0048 LDBOOL R8 0 0
0xA8040001, // 0049 EXBLK 1 1
0x80041000, // 004A RET 1 R8
0x8820010B, // 004B GETMBR R8 R0 K11
0x8C20111A, // 004C GETMET R8 R8 K26
0x88280B1B, // 004D GETMBR R10 R5 K27
0x7C200400, // 004E CALL R8 2
0x88200B1C, // 004F GETMBR R8 R5 K28
0x5426000F, // 0050 LDINT R9 16
0x20201009, // 0051 NE R8 R8 R9
0x78220014, // 0052 JMPF R8 #0068
0xB8220A00, // 0053 GETNGBL R8 K5
0x8C20111D, // 0054 GETMET R8 R8 K29
0x88280B1C, // 0055 GETMBR R10 R5 K28
0x7C200400, // 0056 CALL R8 2
0x5C241000, // 0057 MOVE R9 R8
0x74260004, // 0058 JMPT R9 #005E
0x8C240916, // 0059 GETMET R9 R4 K22
0x582C001E, // 005A LDCONST R11 K30
0x88300B1C, // 005B GETMBR R12 R5 K28
0x7C240600, // 005C CALL R9 3
0x5C201200, // 005D MOVE R8 R9
0xB8260200, // 005E GETNGBL R9 K1
0x8C241302, // 005F GETMET R9 R9 K2
0x8C2C0916, // 0060 GETMET R11 R4 K22
0x5834001F, // 0061 LDCONST R13 K31
0x5C381000, // 0062 MOVE R14 R8
0x5C3C0400, // 0063 MOVE R15 R2
0x5C400600, // 0064 MOVE R16 R3
0x7C2C0A00, // 0065 CALL R11 5
0x58300020, // 0066 LDCONST R12 K32
0x7C240600, // 0067 CALL R9 3
0x88200121, // 0068 GETMBR R8 R0 K33
0x8C201122, // 0069 GETMET R8 R8 K34
0x5C280A00, // 006A MOVE R10 R5
0x5C2C0400, // 006B MOVE R11 R2
0x5C300600, // 006C MOVE R12 R3
0x7C200800, // 006D CALL R8 4
0x50200200, // 006E LDBOOL R8 1 0
0xA8040001, // 006F EXBLK 1 1
0x80041000, // 0070 RET 1 R8
0x70020095, // 0071 JMP #0108
0xB81E0200, // 0072 GETNGBL R7 K1
0x8C1C0F02, // 0073 GETMET R7 R7 K2
0x8C240916, // 0074 GETMET R9 R4 K22
0x582C0023, // 0075 LDCONST R11 K35
0x88300B08, // 0076 GETMBR R12 R5 K8
0x88340B15, // 0077 GETMBR R13 R5 K21
0x7C240800, // 0078 CALL R9 4
0x58280011, // 0079 LDCONST R10 K17
0x7C1C0600, // 007A CALL R7 3
0x881C010B, // 007B GETMBR R7 R0 K11
0x881C0F0C, // 007C GETMBR R7 R7 K12
0x8C1C0F24, // 007D GETMET R7 R7 K36
0x88240B08, // 007E GETMBR R9 R5 K8
0x7C1C0400, // 007F CALL R7 2
0x4C200000, // 0080 LDNIL R8
0x1C200E08, // 0081 EQ R8 R7 R8
0x78220013, // 0082 JMPF R8 #0097
0xB8220200, // 0083 GETNGBL R8 K1
0x8C201102, // 0084 GETMET R8 R8 K2
0x60280008, // 0085 GETGBL R10 G8
0x882C0B08, // 0086 GETMBR R11 R5 K8
0x7C280200, // 0087 CALL R10 1
0x002A4A0A, // 0088 ADD R10 K37 R10
0x582C0011, // 0089 LDCONST R11 K17
0x7C200600, // 008A CALL R8 3
0xB8220200, // 008B GETNGBL R8 K1
0x8C201102, // 008C GETMET R8 R8 K2
0xB82A0A00, // 008D GETNGBL R10 K5
0x8C281527, // 008E GETMET R10 R10 K39
0x5C300A00, // 008F MOVE R12 R5
0x7C280400, // 0090 CALL R10 2
0x002A4C0A, // 0091 ADD R10 K38 R10
0x582C0011, // 0092 LDCONST R11 K17
0x7C200600, // 0093 CALL R8 3
0x50200000, // 0094 LDBOOL R8 0 0
0xA8040001, // 0095 EXBLK 1 1
0x80041000, // 0096 RET 1 R8
0x90162407, // 0097 SETMBR R5 K18 R7
0x88200F13, // 0098 GETMBR R8 R7 K19
0x8C201114, // 0099 GETMET R8 R8 K20
0x88280B15, // 009A GETMBR R10 R5 K21
0x502C0200, // 009B LDBOOL R11 1 0
0x7C200600, // 009C CALL R8 3
0x74220011, // 009D JMPT R8 #00B0
0xB8220200, // 009E GETNGBL R8 K1
0x8C201102, // 009F GETMET R8 R8 K2
0x60280008, // 00A0 GETGBL R10 G8
0x882C0B15, // 00A1 GETMBR R11 R5 K21
0x7C280200, // 00A2 CALL R10 1
0x002A500A, // 00A3 ADD R10 K40 R10
0x00281529, // 00A4 ADD R10 R10 K41
0x602C0008, // 00A5 GETGBL R11 G8
0x88300F13, // 00A6 GETMBR R12 R7 K19
0x8C301918, // 00A7 GETMET R12 R12 K24
0x7C300200, // 00A8 CALL R12 1
0x7C2C0200, // 00A9 CALL R11 1
0x0028140B, // 00AA ADD R10 R10 R11
0x582C0011, // 00AB LDCONST R11 K17
0x7C200600, // 00AC CALL R8 3
0x50200000, // 00AD LDBOOL R8 0 0
0xA8040001, // 00AE EXBLK 1 1
0x80041000, // 00AF RET 1 R8
0x8C200B2A, // 00B0 GETMET R8 R5 K42
0x7C200200, // 00B1 CALL R8 1
0x5C241000, // 00B2 MOVE R9 R8
0x74260002, // 00B3 JMPT R9 #00B7
0x50240000, // 00B4 LDBOOL R9 0 0
0xA8040001, // 00B5 EXBLK 1 1
0x80041200, // 00B6 RET 1 R9
0x88240B2C, // 00B7 GETMBR R9 R5 K44
0x0424132D, // 00B8 SUB R9 R9 K45
0x40261209, // 00B9 CONNECT R9 K9 R9
0x88280B2B, // 00BA GETMBR R10 R5 K43
0x94241409, // 00BB GETIDX R9 R10 R9
0x90165609, // 00BC SETMBR R5 K43 R9
0x88240B2B, // 00BD GETMBR R9 R5 K43
0x40241208, // 00BE CONNECT R9 R9 R8
0xB8260200, // 00BF GETNGBL R9 K1
0x8C241302, // 00C0 GETMET R9 R9 K2
0x8C2C0916, // 00C1 GETMET R11 R4 K22
0x5834002E, // 00C2 LDCONST R13 K46
0x88380B2C, // 00C3 GETMBR R14 R5 K44
0x883C0B2B, // 00C4 GETMBR R15 R5 K43
0x8C3C1F04, // 00C5 GETMET R15 R15 K4
0x7C3C0200, // 00C6 CALL R15 1
0x7C2C0800, // 00C7 CALL R11 4
0x58300011, // 00C8 LDCONST R12 K17
0x7C240600, // 00C9 CALL R9 3
0x8C240B19, // 00CA GETMET R9 R5 K25
0x7C240200, // 00CB CALL R9 1
0xB8260200, // 00CC GETNGBL R9 K1
0x8C241302, // 00CD GETMET R9 R9 K2
0x602C0008, // 00CE GETGBL R11 G8
0x88300B30, // 00CF GETMBR R12 R5 K48
0x7C2C0200, // 00D0 CALL R11 1
0x002E5E0B, // 00D1 ADD R11 K47 R11
0x002C1731, // 00D2 ADD R11 R11 K49
0x60300008, // 00D3 GETGBL R12 G8
0x88340B1C, // 00D4 GETMBR R13 R5 K28
0x7C300200, // 00D5 CALL R12 1
0x002C160C, // 00D6 ADD R11 R11 R12
0x002C1732, // 00D7 ADD R11 R11 K50
0x60300008, // 00D8 GETGBL R12 G8
0x88340B33, // 00D9 GETMBR R13 R5 K51
0x7C300200, // 00DA CALL R12 1
0x002C160C, // 00DB ADD R11 R11 R12
0x58300011, // 00DC LDCONST R12 K17
0x7C240600, // 00DD CALL R9 3
0x8824010B, // 00DE GETMBR R9 R0 K11
0x8C24131A, // 00DF GETMET R9 R9 K26
0x882C0B1B, // 00E0 GETMBR R11 R5 K27
0x7C240400, // 00E1 CALL R9 2
0x88240B30, // 00E2 GETMBR R9 R5 K48
0x1C281309, // 00E3 EQ R10 R9 K9
0x782A000C, // 00E4 JMPF R10 #00F2
0xB82A0200, // 00E5 GETNGBL R10 K1
0x8C281502, // 00E6 GETMET R10 R10 K2
0xB8320A00, // 00E7 GETNGBL R12 K5
0x8C301927, // 00E8 GETMET R12 R12 K39
0x5C380A00, // 00E9 MOVE R14 R5
0x7C300400, // 00EA CALL R12 2
0x0032680C, // 00EB ADD R12 K52 R12
0x58340011, // 00EC LDCONST R13 K17
0x7C280600, // 00ED CALL R10 3
0x50280200, // 00EE LDBOOL R10 1 0
0xA8040001, // 00EF EXBLK 1 1
0x80041400, // 00F0 RET 1 R10
0x70020015, // 00F1 JMP #0108
0x1C28132D, // 00F2 EQ R10 R9 K45
0x782A0008, // 00F3 JMPF R10 #00FD
0x88280135, // 00F4 GETMBR R10 R0 K53
0x8C281522, // 00F5 GETMET R10 R10 K34
0x5C300A00, // 00F6 MOVE R12 R5
0x5C340400, // 00F7 MOVE R13 R2
0x5C380600, // 00F8 MOVE R14 R3
0x7C280800, // 00F9 CALL R10 4
0xA8040001, // 00FA EXBLK 1 1
0x80041400, // 00FB RET 1 R10
0x7002000A, // 00FC JMP #0108
0xB82A0200, // 00FD GETNGBL R10 K1
0x8C281502, // 00FE GETMET R10 R10 K2
0x60300008, // 00FF GETGBL R12 G8
0x5C341200, // 0100 MOVE R13 R9
0x7C300200, // 0101 CALL R12 1
0x00326C0C, // 0102 ADD R12 K54 R12
0x58340011, // 0103 LDCONST R13 K17
0x7C280600, // 0104 CALL R10 3
0x50280000, // 0105 LDBOOL R10 0 0
0xA8040001, // 0106 EXBLK 1 1
0x80041400, // 0107 RET 1 R10
0x501C0200, // 0108 LDBOOL R7 1 0
0xA8040001, // 0109 EXBLK 1 1
0x80040E00, // 010A RET 1 R7
0xA8040001, // 010B EXBLK 1 1
0x70020014, // 010C JMP #0122
0xAC140002, // 010D CATCH R5 0 2
0x70020011, // 010E JMP #0121
0xB81E0200, // 010F GETNGBL R7 K1
0x8C1C0F02, // 0110 GETMET R7 R7 K2
0x60240008, // 0111 GETGBL R9 G8
0x5C280A00, // 0112 MOVE R10 R5
0x7C240200, // 0113 CALL R9 1
0x00266E09, // 0114 ADD R9 K55 R9
0x00241338, // 0115 ADD R9 R9 K56
0x60280008, // 0116 GETGBL R10 G8
0x5C2C0C00, // 0117 MOVE R11 R6
0x7C280200, // 0118 CALL R10 1
0x0024120A, // 0119 ADD R9 R9 R10
0x7C1C0400, // 011A CALL R7 2
0xA41E7200, // 011B IMPORT R7 K57
0x8C200F3A, // 011C GETMET R8 R7 K58
0x7C200200, // 011D CALL R8 1
0x50200000, // 011E LDBOOL R8 0 0
0x80041000, // 011F RET 1 R8
0x70020000, // 0120 JMP #0122
0xB0080000, // 0121 RAISE 2 R0 R0
0x80000000, // 0122 RET 0
})
)
);
/*******************************************************************/
/********************************************************************
** Solidified function: add_session
********************************************************************/
be_local_closure(Matter_MessageHandler_add_session, /* name */
be_nested_proto(
15, /* nstack */
7, /* argc */
2, /* varg */
0, /* has upvals */
NULL, /* no upvals */
0, /* has sup protos */
NULL, /* no sub protos */
1, /* has constants */
( &(const bvalue[10]) { /* constants */
/* K0 */ be_nested_str_weak(string),
/* K1 */ be_nested_str_weak(tasmota),
/* K2 */ be_nested_str_weak(log),
/* K3 */ be_nested_str_weak(format),
/* K4 */ be_nested_str_weak(MTR_X3A_X20add_session_X20local_session_id_X3D_X25i_X20initiator_session_id_X3D_X25i),
/* K5 */ be_const_int(3),
/* K6 */ be_nested_str_weak(device),
/* K7 */ be_nested_str_weak(sessions),
/* K8 */ be_nested_str_weak(create_session),
/* K9 */ be_nested_str_weak(set_keys),
}),
be_str_weak(add_session),
&be_const_str_solidified,
( &(const binstruction[23]) { /* code */
0xA41E0000, // 0000 IMPORT R7 K0
0xB8220200, // 0001 GETNGBL R8 K1
0x8C201102, // 0002 GETMET R8 R8 K2
0x8C280F03, // 0003 GETMET R10 R7 K3
0x58300004, // 0004 LDCONST R12 K4
0x5C340200, // 0005 MOVE R13 R1
0x5C380400, // 0006 MOVE R14 R2
0x7C280800, // 0007 CALL R10 4
0x582C0005, // 0008 LDCONST R11 K5
0x7C200600, // 0009 CALL R8 3
0x88200106, // 000A GETMBR R8 R0 K6
0x88201107, // 000B GETMBR R8 R8 K7
0x8C201108, // 000C GETMET R8 R8 K8
0x5C280200, // 000D MOVE R10 R1
0x5C2C0400, // 000E MOVE R11 R2
0x7C200600, // 000F CALL R8 3
0x8C241109, // 0010 GETMET R9 R8 K9
0x5C2C0600, // 0011 MOVE R11 R3
0x5C300800, // 0012 MOVE R12 R4
0x5C340A00, // 0013 MOVE R13 R5
0x5C380C00, // 0014 MOVE R14 R6
0x7C240A00, // 0015 CALL R9 5
0x80000000, // 0016 RET 0
})
)
);
/*******************************************************************/
/********************************************************************
** Solidified function: init
********************************************************************/
be_local_closure(Matter_MessageHandler_init, /* name */
be_nested_proto(
6, /* nstack */
2, /* argc */
2, /* varg */
0, /* has upvals */
NULL, /* no upvals */
0, /* has sup protos */
NULL, /* no sub protos */
1, /* has constants */
( &(const bvalue[ 8]) { /* constants */
/* K0 */ be_nested_str_weak(device),
/* K1 */ be_nested_str_weak(commissioning),
/* K2 */ be_nested_str_weak(matter),
/* K3 */ be_nested_str_weak(Commisioning_Context),
/* K4 */ be_nested_str_weak(im),
/* K5 */ be_nested_str_weak(IM),
/* K6 */ be_nested_str_weak(counter_rcv),
/* K7 */ be_nested_str_weak(Counter),
}),
be_str_weak(init),
&be_const_str_solidified,
( &(const binstruction[17]) { /* code */
0x90020001, // 0000 SETMBR R0 K0 R1
0xB80A0400, // 0001 GETNGBL R2 K2
0x8C080503, // 0002 GETMET R2 R2 K3
0x5C100000, // 0003 MOVE R4 R0
0x7C080400, // 0004 CALL R2 2
0x90020202, // 0005 SETMBR R0 K1 R2
0xB80A0400, // 0006 GETNGBL R2 K2
0x8C080505, // 0007 GETMET R2 R2 K5
0x5C100000, // 0008 MOVE R4 R0
0x5C140200, // 0009 MOVE R5 R1
0x7C080600, // 000A CALL R2 3
0x90020802, // 000B SETMBR R0 K4 R2
0xB80A0400, // 000C GETNGBL R2 K2
0x8C080507, // 000D GETMET R2 R2 K7
0x7C080200, // 000E CALL R2 1
0x90020C02, // 000F SETMBR R0 K6 R2
0x80000000, // 0010 RET 0
})
)
);
/*******************************************************************/
/********************************************************************
** Solidified function: every_second
********************************************************************/
be_local_closure(Matter_MessageHandler_every_second, /* name */
be_nested_proto(
3, /* nstack */
1, /* argc */
2, /* varg */
0, /* has upvals */
NULL, /* no upvals */
0, /* has sup protos */
NULL, /* no sub protos */
1, /* has constants */
( &(const bvalue[ 3]) { /* constants */
/* K0 */ be_nested_str_weak(commissioning),
/* K1 */ be_nested_str_weak(every_second),
/* K2 */ be_nested_str_weak(im),
}),
be_str_weak(every_second),
&be_const_str_solidified,
( &(const binstruction[ 7]) { /* code */
0x88040100, // 0000 GETMBR R1 R0 K0
0x8C040301, // 0001 GETMET R1 R1 K1
0x7C040200, // 0002 CALL R1 1
0x88040102, // 0003 GETMBR R1 R0 K2
0x8C040301, // 0004 GETMET R1 R1 K1
0x7C040200, // 0005 CALL R1 1
0x80000000, // 0006 RET 0
})
)
);
/*******************************************************************/
/********************************************************************
** Solidified class: Matter_MessageHandler
********************************************************************/
be_local_class(Matter_MessageHandler,
4,
NULL,
be_nested_map(9,
( (struct bmapnode*) &(const bmapnode[]) {
{ be_const_key_weak(every_second, -1), be_const_closure(Matter_MessageHandler_every_second_closure) },
{ be_const_key_weak(msg_received, -1), be_const_closure(Matter_MessageHandler_msg_received_closure) },
{ be_const_key_weak(counter_rcv, -1), be_const_var(3) },
{ be_const_key_weak(commissioning, 0), be_const_var(1) },
{ be_const_key_weak(device, 5), be_const_var(0) },
{ be_const_key_weak(init, 8), be_const_closure(Matter_MessageHandler_init_closure) },
{ be_const_key_weak(send_response, 4), be_const_closure(Matter_MessageHandler_send_response_closure) },
{ be_const_key_weak(add_session, 2), be_const_closure(Matter_MessageHandler_add_session_closure) },
{ be_const_key_weak(im, -1), be_const_var(2) },
})),
be_str_weak(Matter_MessageHandler)
);
/*******************************************************************/
void be_load_Matter_MessageHandler_class(bvm *vm) {
be_pushntvclass(vm, &be_class_Matter_MessageHandler);
be_setglobal(vm, "Matter_MessageHandler");
be_pop(vm, 1);
}
/********************************************************************/
/* End of solidification */