API Reference

PromiseAccessorclass

Promise accessor implementation used by the index-value-accessor pipeline. It returns raw Promise values and exposes resolved values through cache-backed resolved reads.

Import

import { PromiseAccessor } from '@rs-x/core';

Example

import {
  InjectionContainer,
  PENDING,
  RsXCoreInjectionTokens,
  RsXCoreModule,
  type IPromiseAccessor,
} from '@rs-x/core';

await InjectionContainer.load(RsXCoreModule);

const accessor = InjectionContainer.get<IPromiseAccessor>(
  RsXCoreInjectionTokens.IPromiseAccessor,
);

const task = Promise.resolve(42);
const model = { task };

console.log(accessor.getResolvedValue(model, 'task') === PENDING); // true
accessor.setLastValue(task, 42);
console.log(accessor.getResolvedValue(model, 'task')); // 42
accessor.clearLastValue(task);

Constructor injection example

import { Inject, RsXCoreInjectionTokens, type IPromiseAccessor } from '@rs-x/core';

class MyConsumer {
  constructor(
    @Inject(RsXCoreInjectionTokens.IPromiseAccessor)
    private readonly dependency: IPromiseAccessor,
  ) {}
}

Members

9 members in this class.

constructor
constructorpublic
constructor(
  @Inject(RsXCoreInjectionTokens.IResolvedValueCache) private readonly _resolvedValueCache: IResolvedValueCache
)

Parameters

Name
Type
Required
_resolvedValueCache
IResolvedValueCache
required
applies
methodpublic
public applies(
  context: unknown,
  index: string
): boolean

Parameters

Name
Type
Required
context
unknown
required
index
string
required

Returns

boolean

clearLastValue
methodpublic
public clearLastValue(promise: Promise<unknown>): void

Parameters

Name
Type
Required
promise
Promise<unknown>
required

Returns

void

getIndexes
methodpublic
public getIndexes(): IterableIterator<string>

Parameters

No parameters.

Returns

IterableIterator<string>

getResolvedValue
methodpublic
public getResolvedValue(
  context: unknown,
  index: string
): unknown

Parameters

Name
Type
Required
context
unknown
required
index
string
required

Returns

unknown

getValue
methodpublic
public getValue(
  context: unknown,
  index: string
): unknown

Parameters

Name
Type
Required
context
unknown
required
index
string
required

Returns

unknown

hasValue
methodpublic
public hasValue(
  context: unknown,
  index: string
): boolean

Parameters

Name
Type
Required
context
unknown
required
index
string
required

Returns

boolean

setLastValue
methodpublic
public setLastValue(
  promise: Promise<unknown>,
  value: unknown
): void

Parameters

Name
Type
Required
promise
Promise<unknown>
required
value
unknown
required

Returns

void

setValue
methodpublic
public setValue(): void

Parameters

No parameters.

Returns

void