Implemented scalar fields for upb.js and Dart+upb.js.

PiperOrigin-RevId: 522658020
diff --git a/upb/mem/arena.h b/upb/mem/arena.h
index 4586b07..551fc65 100644
--- a/upb/mem/arena.h
+++ b/upb/mem/arena.h
@@ -49,10 +49,14 @@
 
 typedef struct upb_Arena upb_Arena;
 
+// LINT.IfChange(arena_head)
+
 typedef struct {
   char *ptr, *end;
 } _upb_ArenaHead;
 
+// LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/arena.ts:arena_head)
+
 #ifdef __cplusplus
 extern "C" {
 #endif
diff --git a/upb/message/accessors.h b/upb/message/accessors.h
index 3725ea3..6b56e58 100644
--- a/upb/message/accessors.h
+++ b/upb/message/accessors.h
@@ -87,6 +87,8 @@
   }
 }
 
+// LINT.IfChange(message_raw_fields)
+
 UPB_INLINE bool _upb_MiniTable_ValueIsNonZero(const void* default_val,
                                               const upb_MiniTableField* field) {
   char zero[16] = {0};
@@ -125,6 +127,8 @@
   UPB_UNREACHABLE();
 }
 
+// LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/message.ts:message_raw_fields)
+
 UPB_INLINE size_t
 _upb_MiniTable_ElementSizeLg2(const upb_MiniTableField* field) {
   const unsigned char table[] = {
diff --git a/upb/mini_table/field_internal.h b/upb/mini_table/field_internal.h
index e2b8f6b..a258c10 100644
--- a/upb/mini_table/field_internal.h
+++ b/upb/mini_table/field_internal.h
@@ -34,6 +34,8 @@
 // Must be last.
 #include "upb/port/def.inc"
 
+// LINT.IfChange(mini_table_field_layout)
+
 struct upb_MiniTableField {
   uint32_t number;
   uint16_t offset;
@@ -82,6 +84,8 @@
 
 #define kUpb_FieldRep_Shift 6
 
+// LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/mini_table_field.ts:mini_table_field_layout)
+
 UPB_INLINE upb_FieldRep
 _upb_MiniTableField_GetRep(const upb_MiniTableField* field) {
   return (upb_FieldRep)(field->mode >> kUpb_FieldRep_Shift);
@@ -173,6 +177,7 @@
 }
 
 // LINT.ThenChange(GoogleInternalName2)
+// LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/presence.ts:presence_logic)
 
 #ifdef __cplusplus
 } /* extern "C" */
diff --git a/upb/mini_table/message_internal.h b/upb/mini_table/message_internal.h
index 586e5fc..b266f83 100644
--- a/upb/mini_table/message_internal.h
+++ b/upb/mini_table/message_internal.h
@@ -56,6 +56,8 @@
   kUpb_ExtMode_IsMapEntry = 4,
 } upb_ExtMode;
 
+// LINT.IfChange(mini_table_layout)
+
 // upb_MiniTable represents the memory layout of a given upb_MessageDef.
 // The members are public so generated code can initialize them,
 // but users MUST NOT directly read or write any of its members.
@@ -79,6 +81,8 @@
   _upb_FastTable_Entry fasttable[];
 };
 
+// LINT.ThenChange(//depot/google3/third_party/upb/js/impl/upb_bits/mini_table.ts:presence_logic)
+
 // Map entries aren't actually stored for map fields, they are only used during
 // parsing. For parsing, it helps a lot if all map entry messages have the same
 // layout. The layout code in mini_table/decode.c will ensure that all map