# Scope class

Annotation that specifies the scope of a pod within the JetLeaf container.

Use this to indicate whether a new instance should be created for each injection (`'prototype'`) or a single shared instance should be used (`'singleton'`).

### Example:

    @Component()
    @Scope('singleton')
    class SingletonService {
      // This service is shared across all injections
    }

    @Component()
    @Scope('prototype')
    class PrototypeService {
      // A new instance is created for each injection point
    }

Inheritance
  - Object
  - ReflectableAnnotation
  - Scope
Mixed-in types
  - EqualsAndHashCode
Annotations
  - @Target({TargetKind.classType, TargetKind.method})

## Constructors

Scope.new(String value)
  {macro scope}
  const

## Properties

annotationType → Type
  Returns the annotation _type of this annotation.
  no setter override
hashCode → int
  The hash code for this object.
  no setter inherited
runtimeType → Type
  A representation of the runtime type of the object.
  no setter inherited
value → String
  Scope name
  final

## Methods

equalizedProperties() → List<Object?>
  Mixin-style contract for value-based equality, `hashCode`, and `toString`.
  override
equals(Object other) → bool
  Checks whether the given object is logically equivalent to this annotation.
  inherited
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a nonexistent method or property is accessed.
  inherited
toString() → String
  Returns a string representation of this annotation.
  override

## Operators

operator ==(Object other) → bool
  The equality operator.
  inherited