packages/autorest.gotest/src/util/goHelper.ts (33 lines of code) (raw):
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import * as _ from 'lodash';
export class GoHelper {
public static addPackage(type: string, packageName: string) {
let result = '';
let tmpType = '';
let pos = 0;
while (pos < type.length) {
if (type[pos] === '[' || type[pos] === ']' || type[pos] === '*') {
if (tmpType !== '') {
if (tmpType[0] === tmpType[0].toLowerCase()) {
result += tmpType;
} else {
result += packageName + '.' + tmpType;
}
tmpType = '';
}
result += type[pos];
} else {
tmpType += type[pos];
}
pos++;
}
if (tmpType !== '') {
if (tmpType[0] === tmpType[0].toLowerCase()) {
result += tmpType;
} else {
result += packageName + '.' + tmpType;
}
tmpType = '';
}
return result;
}
}