tree ef5db431888fb8f00f99891490f396fe125fdac4
parent fd995def4dce8b0234fa3560049fe6c1a2d74a84
author Ed Tanous <edtanous@google.com> 1678148278 -0800
committer Patrick Williams <patrick@stwcx.xyz> 1679334818 +0000

Optimize object_server

There are quite a few optimizations that can be made to object_server to
reduce memory usage, and improve simplicity.  First, the virtualized
classes have been removed in exchange for std::function based type
erasure.

All the underlying structures have been moved to std::vector, to improve
memory packing and locality.  To accomplish this, the vtable
construction is moved into the initialize function, such that when
initialize is called, the dbus_interface object knows there will be no
more changes, and can therefore take pointers to elements within the
vector for the vtable.

The independent storage of string names has been removed in lieu of
dedicated structures, signal, method_callback, and property_callback,
which each represent one of the primitive types, and each of which have
a "name" string that can be used, whereas previously name required
duplication across each of the unordered_maps.

Change-Id: I0236f1b85c53f1b5d05931ea100c04de6e571665
Signed-off-by: Ed Tanous <edtanous@google.com>
