1015
1016
private doCreateSingleProblemPattern(value: Config.ICheckedProblemPattern, setDefaults: boolean): IProblemPattern | undefined {
1018
>
if (regexp === undefined) {
1019
return undefined;
1020
}
1022
>
if (value.kind) {
1023
result.kind = ProblemLocationKind.fromString(value.kind);
1024
}
1026
>
function copyProperty(result: IProblemPattern, source: Config.IProblemPattern, resultKey: keyof IProblemPattern, sourceKey: keyof Config.IProblemPattern) {
1027
>
const value = source[sourceKey];
1028
>
if (typeof value === 'number') {
1029
(result as unknown as Record<string, unknown>)[resultKey] = value;
1030
}
1032
>
copyProperty(result, value, 'file', 'file');
1033
>
copyProperty(result, value, 'location', 'location');
1034
>
copyProperty(result, value, 'line', 'line');
1035
>
copyProperty(result, value, 'character', 'column');
1036
>
copyProperty(result, value, 'endLine', 'endLine');
1037
>
copyProperty(result, value, 'endCharacter', 'endColumn');
1038
>
copyProperty(result, value, 'severity', 'severity');
1039
>
copyProperty(result, value, 'code', 'code');
1040
>
copyProperty(result, value, 'message', 'message');
1041
>
if (value.loop === true || value.loop === false) {
1042
result.loop = value.loop;
1043
}
1045
if (result.location || result.kind === ProblemLocationKind.File) {
1046
const defaultValue: Partial<IProblemPattern> = {