@bscotch/stitch
Version:
Stitch: The GameMaker Studio 2 Asset Pipeline Development Kit.
37 lines • 1.68 kB
TypeScript
import { GmlToken } from './GmlToken.js';
import type { GmlTokenLocation } from './GmlTokenLocation.js';
/**
* In order to make refactoring GML code easier, in particular when a token
* (such as a function name) has changed its type such that any references to
* it need to be examined, having a "versioning" system on tokens can make
* that possible. For example, renaming a function from 'myFunc' to 'myFunc_v1'
* when its inputs or outputs have changed allows for easy identification of
* all cases where the old references to that function have not been updated.
*/
export declare class GmlTokenVersioned extends GmlToken {
readonly expectedName?: string | undefined;
/**
* @param expectedName A function reference may refer to an outdated name for some particular function.
* If so, the `expectedName` is the *current* name of that function, which may deviate
* from this *reference's* actual name.
*/
constructor(name: string, location: GmlTokenLocation, expectedName?: string | undefined);
get isCorrectVersion(): boolean;
toJSON(): {
invalidVersion: boolean;
name: string;
location: GmlTokenLocation<import("../components/resources/Gms2ResourceBase.js").Gms2ResourceBase<{
name: string;
resourceType: string;
parent: {
path: string;
name: string;
};
resourceVersion: string;
"%Name"?: string | undefined;
ConfigValues?: Record<string, Record<string, string>> | undefined;
tags?: string[] | undefined;
}>>;
};
}
//# sourceMappingURL=GmlTokenVersioned.d.ts.map