code: def insert_before(self, value: Union[RawValue, Value],
                        raw: bool = False) -> "ArrayEntry":
          
          return ArrayEntry(self.index, self.before, self.after.cons(self.value),
                            self._cook_value(value, raw), self.parinst,
                            self.schema_node, datetime.now())
docs: Insert a new entry before the receiver.
  
          Args:
              value: The value of the new entry.
              raw: Flag to be set if `value` is raw.
  
          Returns:
              An instance node of the new inserted entry.