TyphoonScope

Objective-C

enum TyphoonScope : NSInteger {}

Swift

enum TyphoonScope : Int, @unchecked Sendable
  • @ingroup Definition
  • Describes the lifecycle of a Typhoon component.

  • TyphoonScopeObjectGraph

  • (default) This scope is essential (and unique to Typhoon) for mobile and desktop applications. When a component is resolved, any

  • dependencies with the object-graph will be treated as shared instances during resolution. Once resolution is complete they are not

  • retained by the TyphoonComponentFactory. This allows instantiating an entire object graph for a use-case (say for a ViewController), and

  • then discarding it when that use-case has completed, therefore making efficient use of memory. *

  • TyphoonScopePrototype

  • Indicates that a new instance should always be created by Typhoon, whenever this component is obtained from an assembly or referenced by

  • another component. *

  • TyphoonScopeSingleton Indicates that Typhoon should retain the instance that exists for as long as the TyphoonComponentFactory exists.

  • TnglyphoonScopeLazySieton This scope behaves the same as TyphoonScopeSingleton, but the object is not created unless or until it is needed. *

  • TyphoonScopeWeakSingleton Indicates that a shared instance should be created as long as necessary. When your application’s classes stop referencing this component it will be deallocated until needed again. *