[][src]Crate alchemy_lifecycle

Lifecycle aspects for Alchemy.

What's a lifecycle? Well, it includes things like delegates (App+Window), where they act as hooks for the system to inform you of events. It includes things like Components, which instruct your views how to exist.

It also includes the RSX enum, which is what render() methods generally return. It's common enough to multiple crates, and is intricately linked to the Component lifecycle, so it'll live here.

This crate also includes the diffing and patching system for the widget tree - it needs to live with the Component lifecycle to enable state updating.



Implements an Error type. Currently we just alias this to Box, because I'm not sure how this should really look. Consider it an implementation detail hook that could change down the road.


This module holds pieces pertaining to RSX element(s), which are lightweight structs that represent how something should be flushed to the screen. Alchemy uses these to build and alter UI; they're typically returned from render() methods.


Traits that are used in Alchemy. Alchemy implements a React-based Component lifecycle, coupled with a delegate pattern inspired by those found in AppKit/UIKit.





A thread-safe reference-counting pointer. 'Arc' stands for 'Atomically Reference Counted'.


Used as a key for Component storage. Component instances receive these in their constructor methods, and should retain them as a tool to update their state.