Minor refactor

This commit is contained in:
Peng-YM
2022-06-16 11:19:00 +08:00
parent f76096f244
commit 56ada242d2
13 changed files with 38 additions and 45 deletions

View File

@@ -1,31 +1,7 @@
import surge from './grammars/surge';
import loon from './grammars/loon';
import getSurgeParser from './peggy/surge';
import getLoonParser from './peggy/loon';
import getQXParser from './peggy/qx';
import { Base64 } from 'js-base64';
import qx from './grammars/qx';
import * as peggy from 'peggy';
let QXParser, LoonParser, SurgeParser;
function getQXParser() {
if (!QXParser) {
QXParser = peggy.generate(qx);
}
return QXParser;
}
function getLoonParser() {
if (!LoonParser) {
LoonParser = peggy.generate(loon);
}
return LoonParser;
}
function getSurgeParser() {
if (!SurgeParser) {
SurgeParser = peggy.generate(surge);
}
return SurgeParser;
}
// Parse SS URI format (only supports new SIP002, legacy format is depreciated).
// reference: https://shadowsocks.org/en/spec/SIP002-URI-Scheme.html

View File

@@ -1,3 +1,4 @@
import * as peggy from 'peggy';
const grammars = String.raw`
// global initializer
{{
@@ -169,4 +170,10 @@ _ = [ \r\t]*
bool = b:("true"/"false") { return b === "true" }
others = comma [^=,]+ equals [^=,]+
`;
export default grammars;
let parser;
export default function getParser() {
if (!parser) {
parser = peggy.generate(grammars);
}
return parser;
}

View File

@@ -1,3 +1,4 @@
import * as peggy from 'peggy';
const grammars = String.raw`
// global initializer
{{
@@ -168,4 +169,10 @@ equals = _ "=" _
_ = [ \r\t]*
bool = b:("true"/"false") { return b === "true" }
`;
export default grammars;
let parser;
export default function getParser() {
if (!parser) {
parser = peggy.generate(grammars);
}
return parser;
}

View File

@@ -1,3 +1,4 @@
import * as peggy from 'peggy';
const grammars = String.raw`
// global initializer
{{
@@ -169,4 +170,10 @@ _ = [ \r\t]*
bool = b:("true"/"false") { return b === "true" }
others = comma [^=,]+ equals [^=,]+
`;
export default grammars;
let parser;
export default function getParser() {
if (!parser) {
parser = peggy.generate(grammars);
}
return parser;
}