loro-swift icon indicating copy to clipboard operation
loro-swift copied to clipboard

refactor: upgrade to uniffi v0.29

Open Leeeon233 opened this issue 10 months ago • 0 comments

Here is an attempt using uniffi-rs v0.29, in which they support Allow UDL to define Enums with objects so that we can

[Enum]
interface Container{
    List(LoroList container);
    Map(LoroMap container);
    Text(LoroText container);
    Tree(LoroTree container);
    MovableList(LoroMovableList container);
    Counter(LoroCounter container);
    Unknown(LoroUnknown container);
};

[Enum]
interface ValueOrContainer{
    Value(LoroValue value);
    Container(Container container);
};

However, the definition of remote type is strengthened at the same time. In the current architecture, all types in loro-ffi are remote types. uniffi-rs do not yet support remote definitions of traits

Leeeon233 avatar Feb 11 '25 08:02 Leeeon233