Class Shims

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.Shims
All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable

@Generated(value="jsii-pacmak/1.127.0 (build 2117ad5)", date="2026-03-19T12:54:56.113Z") @Stability(Stable) public class Shims extends software.amazon.jsii.JsiiObject
Converts between Mixins and Aspects.

Since Mixins and Aspects are both implementations of the visitor pattern, they can be converted from each other. Mixins are applied immediately (imperative), while Aspects are applied during synthesis (declarative).

  • Nested Class Summary

    Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject

    software.amazon.jsii.JsiiObject.InitializationMode
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Shims(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
     
    protected
    Shims(software.amazon.jsii.JsiiObjectRef objRef)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static IAspect
    asAspect(software.constructs.IMixin mixin)
    Wraps a Mixin as an Aspect.
    static software.constructs.IMixin
    asMixin(IAspect aspect)
    Wraps an Aspect as a Mixin.

    Methods inherited from class software.amazon.jsii.JsiiObject

    jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSet

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface software.amazon.jsii.JsiiSerializable

    $jsii$toJson
  • Constructor Details

    • Shims

      protected Shims(software.amazon.jsii.JsiiObjectRef objRef)
    • Shims

      protected Shims(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
  • Method Details

    • asAspect

      @Stability(Stable) @NotNull public static IAspect asAspect(@NotNull software.constructs.IMixin mixin)
      Wraps a Mixin as an Aspect.

      The resulting Aspect defers the Mixin's application to the synthesis phase. The Mixin's supports() method is used to filter which constructs are visited.

      Parameters:
      mixin - The Mixin to wrap. This parameter is required.
    • asMixin

      @Stability(Stable) @NotNull public static software.constructs.IMixin asMixin(@NotNull IAspect aspect)
      Wraps an Aspect as a Mixin.

      The resulting Mixin applies the Aspect's visit() immediately to every node. The Aspect is applied to all constructs since Aspects don't have a supports() filter.

      Parameters:
      aspect - The Aspect to wrap. This parameter is required.