mirror of
https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-10 00:52:40 +00:00
Minor refactor
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
Reference in New Issue
Block a user