in src/grammar.ts [1244:1274]
public static set(metadata: number, languageId: number, tokenType: TemporaryStandardTokenType, fontStyle: FontStyle, foreground: number, background: number): number {
let _languageId = StackElementMetadata.getLanguageId(metadata);
let _tokenType = StackElementMetadata.getTokenType(metadata);
let _fontStyle = StackElementMetadata.getFontStyle(metadata);
let _foreground = StackElementMetadata.getForeground(metadata);
let _background = StackElementMetadata.getBackground(metadata);
if (languageId !== 0) {
_languageId = languageId;
}
if (tokenType !== TemporaryStandardTokenType.Other) {
_tokenType = tokenType === TemporaryStandardTokenType.MetaEmbedded ? StandardTokenType.Other : tokenType;
}
if (fontStyle !== FontStyle.NotSet) {
_fontStyle = fontStyle;
}
if (foreground !== 0) {
_foreground = foreground;
}
if (background !== 0) {
_background = background;
}
return (
(_languageId << MetadataConsts.LANGUAGEID_OFFSET)
| (_tokenType << MetadataConsts.TOKEN_TYPE_OFFSET)
| (_fontStyle << MetadataConsts.FONT_STYLE_OFFSET)
| (_foreground << MetadataConsts.FOREGROUND_OFFSET)
| (_background << MetadataConsts.BACKGROUND_OFFSET)
) >>> 0;
}