net.thevpc.commons.md.util.PropertiesParser Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of thevpc-common-md-docusaurus Show documentation
Show all versions of thevpc-common-md-docusaurus Show documentation
Docusaurus parser and templating support Library
The newest version!
///*
// * To change this license header, choose License Headers in Project Properties.
// * To change this template file, choose Tools | Templates
// * and open the template in the editor.
// */
//package net.thevpc.commons.md.util;
//
//import java.util.LinkedHashMap;
//import java.util.Map;
//import java.util.regex.Matcher;
//import java.util.regex.Pattern;
//
///**
// *
// * @author thevpc
// */
//public class PropertiesParser {
//
// public static final int EOF = -1;
// public static final int WHITE = -2;
// public static final int WORD = -3;
// public static final int NUMBER = -4;
// private StringBuilder st;
// public int st_ttype;
// public String st_ttypeName;
// public String st_image;
// private boolean pushedBack;
//
// public PropertiesParser(String str) {
// this.st = new StringBuilder(str == null ? "" : str);
// }
//
// public Map parseMap() {
// LinkedHashMap m = new LinkedHashMap<>();
// while (true) {
// String k = parseKey();
// if (k == null) {
// if (st_ttype == EOF) {
// break;
// } else {
// throw new IllegalArgumentException("Error");
// }
// }
// if (parseEq()) {
// String v = parseKey();
// if (v == null) {
// if (st_ttype == EOF) {
// m.put(k, JsonItem.parseString(""));
// break;
// } else {
// pushBack();
// }
// } else {
// m.put(k, JsonItem.parseString(v));
// }
// } else {
// m.put(k, JsonItem.parseString(null));
// }
// }
// return m;
// }
//
// private void pushBack() {
// pushedBack = true;
// }
//
// public int nextToken() {
// if (pushedBack) {
// pushedBack = false;
// return st_ttype;
// }
// if (st.length() == 0) {
// st_ttype = EOF;
// st_ttypeName = "";
// st_image = "";
// return EOF;
// }
// char c = st.charAt(0);
// if (isWhite(c)) {
// StringBuilder sb = new StringBuilder();
// while (st.length() > 0 && isWhite(st.charAt(0))) {
// sb.append(st.charAt(0));
// st_remove(1);
// }
// st_image = sb.toString();
// st_ttype = WHITE;
// st_ttypeName = "";
// return st_ttype;
// }
// if (isNumber(c)) {
// Pattern p = Pattern.compile("^(?[-]?[0-9]+(.[0-9]+)?).*");
// Matcher matcher = p.matcher(st.toString());
// if (matcher.find()) {
// String a = matcher.group("x");
// st_image = a;
// st_ttype = NUMBER;
// st_ttypeName = "";
// st_remove(a.length());
// return st_ttype;
// }
// }
// if (c == '\'') {
// Pattern p = Pattern.compile("^(?[']([^']|(\\'))+[']).*");
// Matcher matcher = p.matcher(st.toString());
// if (matcher.find()) {
// String a = matcher.group("x");
// st_image = a;
// st_ttype = '\'';
// st_ttypeName = "";
// st_remove(a.length());
// return st_ttype;
// }
// }
// if (c == '\"') {
// Pattern p = Pattern.compile("^(?[\"]([^']|(\\\"))+[\"]).*");
// Matcher matcher = p.matcher(st.toString());
// if (matcher.find()) {
// String a = matcher.group("x");
// st_image = a;
// st_ttype = '\'';
// st_ttypeName = "";
// st_remove(a.length());
// return st_ttype;
// }
// }
// if (c == '{') {
// st_remove(1);
// StringBuilder sb = new StringBuilder();
// sb.append(c);
// while (true) {
// int s = nextToken();
// if (s == EOF) {
// break;
// }
// if (s == '}') {
// sb.append((char) s);
// break;
// } else {
// sb.append(st_image);
// }
// }
// st_ttype = c;
// st_ttypeName = "{...}";
// st_image = sb.toString();
// return c;
// }
// if (c == '(') {
// st_remove(1);
// StringBuilder sb = new StringBuilder();
// sb.append(c);
// while (true) {
// int s = nextToken();
// if (s == EOF) {
// break;
// }
// if (s == ')') {
// sb.append((char) s);
// break;
// } else {
// sb.append(st_image);
// }
// }
// st_ttype = c;
// st_ttypeName = "(...)";
// st_image = sb.toString();
// return c;
// }
// if (c == '[') {
// st_remove(1);
// StringBuilder sb = new StringBuilder();
// sb.append(c);
// while (true) {
// int s = nextToken();
// if (s == EOF) {
// break;
// }
// if (s == ']') {
// sb.append((char) s);
// break;
// } else {
// sb.append(st_image);
// }
// }
// st_ttype = c;
// st_ttypeName = "[...]";
// st_image = sb.toString();
// return c;
// }
// if (isSeparator(c)) {
// st_remove(1);
// st_ttype = c;
// st_ttypeName = "";
// st_image = String.valueOf((char) c);
// return c;
// }
// StringBuilder sb = new StringBuilder();
// while (true) {
// if (st.length() == 0) {
// break;
// }
// char cc = st.charAt(0);
// if (isWhite(cc) || isSeparator(cc)) {
// break;
// }
// sb.append(cc);
// st_remove(1);
// }
// st_image = sb.toString();
// st_ttype = WORD;
// st_ttypeName = "";
// return st_ttype;
// }
//
// private StringBuilder st_remove(int x) {
// return st.delete(0, x);
// }
//
// private static boolean isNumber(char c) {
// return c >= '0' && c <= '9';
// }
//
// private static boolean isWhite(char c) {
// return c >= 0 && c <= 32;
// }
//
// private static boolean isSeparator(char c) {
// return c == '}'
// || c == '.'
// || c == ','
// || c == ';'
// || c == ']'
// || c == ')'
// || c == ':'
// || c == ','
// || c == ';'
// || c == '|'
// || c == '&'
// || c == '-'
// || c == '*'
// || c == '/'
// || c == '+'
// || c == '~'
// || c == '#'
// || c == '`'
// || c == '='
// || c == '<'
// || c == '>'
// || c == '?'
// || c == '!';
// }
//
//// private String parseUntilStop(char stop, boolean include) {
//// StringBuilder sb = new StringBuilder();
//// while (true) {
//// int i = _nextToken();
//// if (i == EOF) {
//// break;
//// }
//// if (i == stop) {
//// if (include) {
//// sb.append((char) st_ttype);
//// break;
//// } else {
//// pushBack();
//// break;
//// }
//// } else {
//// pushBack();
//// }
//// String k = parseKey();
//// if (k == null) {
//// break;
//// }
//// if (sb.length() > 0) {
//// sb.append(" ");
//// }
//// sb.append(k);
//// }
//// return sb.toString();
//// }
// private void skipSpaces() {
// while (true) {
// int i = nextToken();
// if (i == EOF) {
// return;
// }
// if (i != WHITE) {
// pushBack();
// return;
// }
// }
// }
//
// private boolean parseEq() {
// skipSpaces();
// int i = nextToken();
// if (i == '=') {
// return true;
// }
// pushBack();
// return false;
// }
//
// private String parseKey() {
// skipSpaces();
// int i = nextToken();
// if (i == EOF) {
// return null;
// }
// return st_image;
// }
//}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy