162. Introducing the memory segment view VarHandle
Let’s consider the following simple memory segment for storing an int (arena is an instance of Arena):
MemorySegment segment = arena.allocate(ValueLayout.JAVA_INT);
    We know that we can create a VarHandle via PathElement:
// VarHandle[varType=int, 
// coord=[interface java.lang.foreign.MemorySegment]]
VarHandle handle = ValueLayout.JAVA_INT.varHandle();
    Or, via arrayElementVarHandle():
// VarHandle[varType=int, 
// coord=[interface java.lang.foreign.MemorySegment, long]]
VarHandle arrhandle
  = ValueLayout.JAVA_INT.arrayElementVarHandle();
    The MethodHandles.memorySegmentViewVarHandle(ValueLayout layout) is another approach for creating a VarHandle that can be used to access a memory segment. The returned VarHandle perceives/views the content of the memory segment as a sequence of the given ValueLayout. In our case, the code looks as follows:
// VarHandle[varType=int, 
// coord=[interface java.lang...