Skip to content

Commit 53c87cf

Browse files
committed
Cleanup extensions
Signed-off-by: worksofliam <[email protected]>
1 parent ef3f7f8 commit 53c87cf

File tree

12 files changed

+45
-34
lines changed

12 files changed

+45
-34
lines changed

cli/src/extensions.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,2 @@
11

2-
export const rpgExtensions = [`sqlrpgle`, `rpgle`];
3-
export const clExtensions = [`clle`, `cl`, `clp`];
4-
export const ddsExtension = [`pf`, `lf`, `dspf`, `prtf`];
5-
export const sqlExtensions = [`sql`, `table`, `view`, `index`, `alias`, `sqlprc`, `sqludf`, `sqludt`, `sqltrg`, `sqlalias`, `sqlseq`];
6-
export const srvPgmExtensions = [`binder`, `bnd`];
7-
export const cmdExtensions = [`cmd`];
8-
export const objectExtensions = [`dtaara`, `mnucmd`, `msgf`, `dtaq`, `bnddir`];
9-
10-
export const allExtensions = [...rpgExtensions, ...clExtensions, ...ddsExtension, ...sqlExtensions, ...srvPgmExtensions, ...cmdExtensions, ...objectExtensions];
11-
export const scanGlob = `**/*.{${allExtensions.join(`,`)},${allExtensions.map(e => e.toUpperCase()).join(`,`)}}`;
12-
132
export const referencesFileName = `.objrefs`;

cli/src/index.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import path from 'path';
88
import { BuildFiles, cliSettings, error, infoOut, warningOut } from './cli';
99
import { BobProject } from "./builders/bob";
1010
import { ImpactMarkdown } from "./builders/imd";
11-
import { allExtensions, referencesFileName } from "./extensions";
11+
import { referencesFileName } from "./extensions";
1212
import { getBranchLibraryName } from "./builders/environment";
1313
import { renameFiles, replaceIncludes } from './utils';
1414
import { ReadFileSystem } from './readFileSystem';
@@ -23,7 +23,7 @@ if (isCli || process.env.VSCODE_INSPECTOR_OPTIONS) {
2323
async function main() {
2424
const parms = process.argv.slice(2);
2525
let cwd = process.cwd();
26-
let scanGlob = `**/*.{${allExtensions.join(`,`)},${allExtensions.map(e => e.toUpperCase()).join(`,`)}}`;
26+
let scanGlob: string|undefined = undefined;
2727

2828
for (let i = 0; i < parms.length; i++) {
2929
switch (parms[i]) {
@@ -162,6 +162,10 @@ async function main() {
162162

163163
let files: string[];
164164

165+
if (!scanGlob) {
166+
scanGlob = targets.getSearchGlob();
167+
}
168+
165169
try {
166170
files = await fs.getFiles(cwd, scanGlob);
167171
} catch (e) {
@@ -295,6 +299,5 @@ async function listDeps(cwd: string, targets: Targets, query: string) {
295299
export { Targets } from './targets';
296300
export { MakeProject } from './builders/make';
297301
export { BobProject } from "./builders/bob";
298-
export { ImpactMarkdown } from "./builders/imd"
299-
export { allExtensions } from "./extensions";
302+
export { ImpactMarkdown } from "./builders/imd"
300303
export * as Utils from './utils';

cli/src/readFileSystem.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,11 @@ import glob from "glob";
44
import path from 'path';
55
import os from 'os';
66
import { getFiles } from './utils';
7-
import { scanGlob } from './extensions';
87

98
export class ReadFileSystem {
109
constructor() {}
1110

12-
async getFiles(cwd: string, globPath = scanGlob, additionalOpts: any = {}): Promise<string[]> {
11+
async getFiles(cwd: string, globPath, additionalOpts: any = {}): Promise<string[]> {
1312
return getFiles(cwd, globPath, additionalOpts);
1413
}
1514

cli/src/targets/index.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import { DefinitionType, File, Module, CLParser } from 'vscode-clle/language';
66
import { DisplayFile as dds } from "vscode-displayfile/src/dspf";
77
import Document from "vscode-db2i/src/language/sql/document";
88
import { ObjectRef, StatementType } from 'vscode-db2i/src/language/sql/types';
9-
import { rpgExtensions, clExtensions, ddsExtension, sqlExtensions, srvPgmExtensions, cmdExtensions } from '../extensions';
109
import Parser from "vscode-rpgle/language/parser";
1110
import { setupParser } from '../languages/rpgle';
1211
import { Logger } from '../logger';
@@ -15,6 +14,7 @@ import { extCanBeProgram, getObjectType } from '../builders/environment';
1514
import { isSqlFunction } from '../languages/sql';
1615
import { ReadFileSystem } from '../readFileSystem';
1716
import { TargetsLanguageProvider } from './languages';
17+
import { sqlExtensions } from './languages/sql';
1818

1919
export type ObjectType = "PGM" | "SRVPGM" | "MODULE" | "FILE" | "BNDDIR" | "DTAARA" | "CMD" | "MENU" | "DTAQ";
2020

@@ -104,6 +104,10 @@ export class Targets {
104104
return ignoredObjects;
105105
}
106106

107+
getSearchGlob(): string {
108+
return this.languageProvider.getGlob();
109+
}
110+
107111
public getCwd() {
108112
return this.cwd;
109113
}
@@ -141,7 +145,7 @@ export class Targets {
141145
await this.handleRefsFile(path.join(this.cwd, withRef));
142146
}
143147

144-
const initialFiles = await this.fs.getFiles(this.cwd);
148+
const initialFiles = await this.fs.getFiles(this.cwd, this.getSearchGlob());
145149
await this.loadObjectsFromPaths(initialFiles);
146150
await Promise.allSettled(initialFiles.map(f => this.parseFile(f)));
147151
}

cli/src/targets/languages.ts

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { FileOptions, Targets } from ".";
2-
import { clExtensions, cmdExtensions, ddsExtension, rpgExtensions, sqlExtensions, srvPgmExtensions } from "../extensions";
3-
import { clleTargetCallback } from "./languages/clle";
4-
import { ddsTargetCallback } from "./languages/dds";
5-
import { rpgleTargetParser } from "./languages/rpgle";
6-
import { sqlTargetCallback } from "./languages/sql";
7-
import { binderTargetCallback } from "./languages/binder";
8-
import { cmdTargetCallback } from "./languages/cmd";
2+
import { clExtensions, clleTargetCallback } from "./languages/clle";
3+
import { ddsExtension, ddsTargetCallback } from "./languages/dds";
4+
import { rpgExtensions, rpgleTargetParser } from "./languages/rpgle";
5+
import { sqlExtensions, sqlTargetCallback } from "./languages/sql";
6+
import { binderExtensions, binderTargetCallback } from "./languages/binder";
7+
import { cmdExtensions, cmdTargetCallback } from "./languages/cmd";
8+
import { noSourceObjects, noSourceTargetCallback } from "./languages/nosrc";
99

1010
export type LanguageCallback = (targets: Targets, relativePath: string, content: string, options: FileOptions) => Promise<void>
1111
interface LanguageGroup {
@@ -18,8 +18,9 @@ export class TargetsLanguageProvider {
1818
{extensions: clExtensions, callback: clleTargetCallback},
1919
{extensions: sqlExtensions, callback: sqlTargetCallback},
2020
{extensions: ddsExtension, callback: ddsTargetCallback},
21-
{extensions: srvPgmExtensions, callback: binderTargetCallback},
22-
{extensions: cmdExtensions, callback: cmdTargetCallback}
21+
{extensions: binderExtensions, callback: binderTargetCallback},
22+
{extensions: cmdExtensions, callback: cmdTargetCallback},
23+
{extensions: noSourceObjects, callback: noSourceTargetCallback}
2324
];
2425

2526
constructor(private readonly targets: Targets) {

cli/src/targets/languages/binder.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ import { FileOptions, ILEObjectTarget, Targets } from "..";
44
import { infoOut } from "../../cli";
55
import { trimQuotes } from "../../utils";
66

7+
export const binderExtensions = [`binder`, `bnd`];
8+
79
export async function binderTargetCallback(targets: Targets, localPath: string, content: string, options: FileOptions) {
810
const clDocs = new CLParser();
911
const tokens = clDocs.parseDocument(content);

cli/src/targets/languages/clle.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import { CLParser, DefinitionType, Module, File } from "vscode-clle/language";
33
import { FileOptions, ILEObjectTarget, Targets } from "..";
44
import { infoOut } from "../../cli";
55

6+
export const clExtensions = [`clle`, `cl`, `clp`];
7+
68
export async function clleTargetCallback(targets: Targets, filePath: string, content: string, options: FileOptions) {
79
const clDocs = new CLParser();
810
const tokens = clDocs.parseDocument(content);

cli/src/targets/languages/cmd.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
1-
import path from "path";
2-
import { CLParser, DefinitionType, Module, File } from "vscode-clle/language";
3-
import { FileOptions, ILEObjectTarget, Targets } from "..";
4-
import { infoOut } from "../../cli";
5-
import { trimQuotes } from "../../utils";
1+
import { FileOptions, Targets } from "..";
2+
3+
export const cmdExtensions = [`cmd`];
64

75
export async function cmdTargetCallback(targets: Targets, localPath: string, content: string, options: FileOptions) {
86
targets.resolvePathToObject(localPath, options.text);

cli/src/targets/languages/dds.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import { DisplayFile as dds } from "vscode-displayfile/src/dspf";
33
import { FileOptions, ILEObjectTarget, Targets } from "..";
44
import { infoOut } from "../../cli";
55

6+
export const ddsExtension = [`pf`, `lf`, `dspf`, `prtf`];
7+
68
export async function ddsTargetCallback(targets: Targets, filePath: string, content: string, options: FileOptions) {
79
const eol = content.indexOf(`\r\n`) >= 0 ? `\r\n` : `\n`;
810

cli/src/targets/languages/nosrc.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { Targets, FileOptions } from "..";
2+
3+
export const noSourceObjects = [`dtaara`, `mnucmd`, `msgf`, `dtaq`, `bnddir`];
4+
5+
export async function noSourceTargetCallback(targets: Targets, localPath: string, content: string, options: FileOptions) {
6+
targets.resolvePathToObject(localPath, options.text);
7+
}

0 commit comments

Comments
 (0)