Skip to content

Commit f95a1e4

Browse files
committed
refactor: rename ArraySpecialMember to ArrayVariable
1 parent 5d624fd commit f95a1e4

File tree

4 files changed

+26
-32
lines changed

4 files changed

+26
-32
lines changed

resources/properties.schema.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"description": "Configuration for PostgreSQL Hacker Helper VS Code extension",
66
"type": "object",
77
"definitions": {
8-
"arraySpecialMember": {
8+
"array": {
99
"type": "object",
1010
"required": [
1111
"typeName",
@@ -194,7 +194,7 @@
194194
"type": "array",
195195
"description": "Special members that represent arrays - separate fields for array and it's length",
196196
"items": {
197-
"$ref": "#/definitions/arraySpecialMember"
197+
"$ref": "#/definitions/array"
198198
}
199199
},
200200
"aliases": {

src/configuration.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { WorkspaceNotOpenedError } from './error';
99

1010
export interface VariablesConfiguration {
1111
/* Array special members */
12-
arrays?: vars.ArraySpecialMemberInfo[];
12+
arrays?: vars.ArrayVariableInfo[];
1313
/* Information about type aliases */
1414
aliases?: vars.AliasInfo[];
1515
/* Custom List types */
@@ -30,7 +30,7 @@ export interface FormatterConfiguration {
3030

3131
/* Schema of configuration file */
3232
interface ConfigurationFile {
33-
arrays: vars.ArraySpecialMemberInfo[] | undefined;
33+
arrays: vars.ArrayVariableInfo[] | undefined;
3434
aliases: vars.AliasInfo[] | undefined;
3535
customListTypes: vars.ListPtrSpecialMemberInfo[] | undefined;
3636
htab: vars.HtabEntryInfo[] | undefined;
@@ -68,7 +68,7 @@ function normalizeFuncName(name: string) {
6868
};
6969

7070
function parseConfiguration(contents: unknown): ConfigurationFile | undefined {
71-
const parseArrayMember = (obj: unknown): vars.ArraySpecialMemberInfo | undefined => {
71+
const parseArrayMember = (obj: unknown): vars.ArrayVariableInfo | undefined => {
7272
/*
7373
* {
7474
* "typeName": "parentType",

src/constants.ts

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ArraySpecialMemberInfo, BitmaskMemberInfo,
1+
import { ArrayVariableInfo, BitmaskMemberInfo,
22
HtabEntryInfo,
33
ListPtrSpecialMemberInfo,
44
SimplehashEntryInfo,
@@ -1386,13 +1386,7 @@ export function getDefaultAliases(): [string, string][] {
13861386
] as [string, string][];
13871387
}
13881388

1389-
export interface ArraySpecialMember {
1390-
typeName: string;
1391-
memberName: string;
1392-
lengthExpr: string
1393-
}
1394-
1395-
export function getArraySpecialMembers(): ArraySpecialMemberInfo[] {
1389+
export function getArrays(): ArrayVariableInfo[] {
13961390
const _ = (typeName: string, memberName: string, lengthExpression: string) => ({
13971391
typeName,
13981392
memberName,

src/variables.ts

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ export class NodeVarRegistry {
7575
}
7676
}
7777

78-
export interface ArraySpecialMemberInfo {
78+
export interface ArrayVariableInfo {
7979
/* Parent type containing pointer to array */
8080
typeName: string;
8181
/* Name of member which stores array */
@@ -138,7 +138,7 @@ export class SpecialMemberRegistry {
138138
/**
139139
* Double map: Type name -> (Member Name -> Info Object).
140140
*/
141-
arraySpecialMembers = new Map<string, Map<string, ArraySpecialMemberInfo>>();
141+
arrays = new Map<string, Map<string, ArrayVariableInfo>>();
142142

143143
/**
144144
* Double map: Member/variable name -> (Struct/Function name -> Info object).
@@ -156,11 +156,11 @@ export class SpecialMemberRegistry {
156156
*/
157157
bitmasks = new Map<string, Map<string, BitmaskMemberInfo>>();
158158

159-
addArraySpecialMembers(elements: ArraySpecialMemberInfo[]) {
159+
addArrays(elements: ArrayVariableInfo[]) {
160160
for (const element of elements) {
161-
const typeMap = this.arraySpecialMembers.get(element.typeName);
161+
const typeMap = this.arrays.get(element.typeName);
162162
if (typeMap === undefined) {
163-
this.arraySpecialMembers.set(element.typeName, new Map([
163+
this.arrays.set(element.typeName, new Map([
164164
[element.memberName, element],
165165
]));
166166
} else {
@@ -192,9 +192,9 @@ export class SpecialMemberRegistry {
192192
}
193193
}
194194

195-
getArraySpecialMember(parentType: string, memberName: string) {
195+
getArray(parentType: string, memberName: string) {
196196
const parentTypeName = dbg.getStructNameFromType(parentType);
197-
const membersMap = this.arraySpecialMembers.get(parentTypeName);
197+
const membersMap = this.arrays.get(parentTypeName);
198198
if (membersMap === undefined) {
199199
return;
200200
}
@@ -1243,9 +1243,9 @@ export abstract class Variable {
12431243
if (parent) {
12441244
/* FLA can be expanded as array */
12451245
const specialMember = context.specialMemberRegistry
1246-
.getArraySpecialMember(parent.type, debugVariable.name);
1246+
.getArray(parent.type, debugVariable.name);
12471247
if (specialMember) {
1248-
return new ArraySpecialMember(specialMember, args);
1248+
return new ArrayVariable(specialMember, args);
12491249
}
12501250
}
12511251

@@ -1310,9 +1310,9 @@ export abstract class Variable {
13101310
*/
13111311
if (parent) {
13121312
const specialMember = context.specialMemberRegistry
1313-
.getArraySpecialMember(parent.type, debugVariable.name);
1313+
.getArray(parent.type, debugVariable.name);
13141314
if (specialMember) {
1315-
return new ArraySpecialMember(specialMember, args);
1315+
return new ArrayVariable(specialMember, args);
13161316
}
13171317
}
13181318

@@ -1746,7 +1746,7 @@ export class RealVariable extends Variable {
17461746
}
17471747

17481748
if (prop.isFlexibleArray()) {
1749-
/* Flexible array is expandable only if it is a ArraySpecialMember */
1749+
/* Flexible array is expandable only if it is a ArrayVariable */
17501750
return false;
17511751
}
17521752

@@ -1976,7 +1976,7 @@ export class RealVariable extends Variable {
19761976
return `((${this.parent.type})${this.parent.getPointer()})[${index}]`;
19771977
}
19781978
}
1979-
} else if (this.parent instanceof ArraySpecialMember) {
1979+
} else if (this.parent instanceof ArrayVariable) {
19801980
if (this.getTypeProperties().pointerCanDeref()) {
19811981
return `(${this.type})${this.getPointer()}`;
19821982
} else {
@@ -4385,16 +4385,16 @@ export class ListNodeVariable extends NodeVariable {
43854385
}
43864386

43874387

4388-
class ArraySpecialMember extends RealVariable {
4388+
class ArrayVariable extends RealVariable {
43894389
/**
43904390
* Expression to evaluate to obtain array length.
43914391
* Appended to target struct from right.
43924392
* First element is length member name, but after
43934393
* can be correction expressions i.e. '+ 1'.
43944394
*/
4395-
info: ArraySpecialMemberInfo;
4395+
info: ArrayVariableInfo;
43964396

4397-
constructor(info: ArraySpecialMemberInfo, args: RealVariableArgs) {
4397+
constructor(info: ArrayVariableInfo, args: RealVariableArgs) {
43984398
super(args);
43994399
this.info = info;
44004400
}
@@ -4873,7 +4873,7 @@ class BitmapSetSpecialMember extends NodeVariable {
48734873
if (members && index < members.length) {
48744874
return members[index];
48754875
}
4876-
} else if (field instanceof ArraySpecialMember) {
4876+
} else if (field instanceof ArrayVariable) {
48774877
const members = await field.getChildren();
48784878
if (members && index < members.length) {
48794879
return members[index];
@@ -5877,7 +5877,7 @@ export class PgVariablesViewProvider implements vscode.TreeDataProvider<Variable
58775877
if (config.arrays?.length) {
58785878
logger.debug('adding', config.arrays.length, 'arrays from config file');
58795879
try {
5880-
specialMembers.addArraySpecialMembers(config.arrays);
5880+
specialMembers.addArrays(config.arrays);
58815881
} catch (err) {
58825882
logger.error(err, 'could not add custom array special members');
58835883
}
@@ -5999,7 +5999,7 @@ export class PgVariablesViewProvider implements vscode.TreeDataProvider<Variable
59995999

60006000
async createExecContext(pgversion: number | undefined): Promise<ExecContextData> {
60016001
const specialMembers = new SpecialMemberRegistry();
6002-
specialMembers.addArraySpecialMembers(constants.getArraySpecialMembers());
6002+
specialMembers.addArrays(constants.getArrays());
60036003
specialMembers.addListCustomPtrSpecialMembers(constants.getKnownCustomListPtrs());
60046004

60056005
const hashTables = new HashTableTypes();

0 commit comments

Comments
 (0)