Package com.igormaznitsa.jcp.utils
Class PreprocessorUtils
- java.lang.Object
-
- com.igormaznitsa.jcp.utils.PreprocessorUtils
-
public final class PreprocessorUtils extends java.lang.Object
It is an auxiliary class contains some useful methods
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
LINE_END
private static java.util.regex.Pattern
PATTERN_MACROS_WITH_SPACES
-
Constructor Summary
Constructors Modifier Constructor Description private
PreprocessorUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description private static void
checkFile(java.io.File file)
static void
copyFile(java.io.File source, java.io.File dest, boolean copyFileAttributes)
static void
copyFileAttributes(java.io.File from, java.io.File to)
static java.lang.String
extractTail(java.lang.String prefix, java.lang.String value)
static java.lang.String
extractTrimmedTail(java.lang.String prefix, java.lang.String value)
static java.lang.String
generateStringForChar(char chr, int length)
static java.lang.String
getFileExtension(java.io.File file)
static java.lang.String
getFilePath(java.io.File file)
static java.lang.String
getNextLineCodes()
static boolean
isFileContentEquals(java.io.File src, java.io.File dst)
static java.lang.String
leftTrim(java.lang.String rawString)
static java.io.BufferedReader
makeFileReader(java.io.File file, java.lang.String charset, int bufferSize)
static java.lang.String
normalizeVariableName(java.lang.String name)
static java.lang.String
processMacroses(java.lang.String processingString, PreprocessorContext context)
static byte[]
readFileAsByteArray(java.io.File file)
static java.lang.String[]
readWholeTextFileIntoArray(java.io.File file, java.lang.String encoding, java.util.concurrent.atomic.AtomicBoolean endedByNextLine)
static java.lang.String[]
replaceChar(java.lang.String[] source, char toBeReplaced, char replacement)
static java.lang.String
replacePartByChar(java.lang.String text, char chr, int startPosition, int length)
static java.lang.String[]
replaceStringPrefix(java.lang.String[] allowedPrefixesToBeReplaced, java.lang.String replacement, java.lang.String[] strings)
static java.lang.String[]
splitExtensionCommaList(java.lang.String extensions)
static java.lang.String[]
splitForChar(java.lang.String string, char delimiter)
static java.lang.String[]
splitForCharAndHoldEmptyLine(java.lang.String string, char delimiter)
static java.lang.String[]
splitForEqualChar(java.lang.String string)
static void
throwPreprocessorException(java.lang.String msg, java.lang.String processingString, java.io.File srcFile, int nextStringIndex, java.lang.Throwable cause)
-
-
-
Method Detail
-
getFileExtension
public static java.lang.String getFileExtension(java.io.File file)
-
splitExtensionCommaList
@MustNotContainNull @ThrowsRuntimeException(value=java.lang.NullPointerException.class, reference="if extensions are null") public static java.lang.String[] splitExtensionCommaList(java.lang.String extensions)
-
makeFileReader
public static java.io.BufferedReader makeFileReader(java.io.File file, java.lang.String charset, int bufferSize) throws java.io.IOException
- Throws:
java.io.IOException
-
replaceChar
@MustNotContainNull public static java.lang.String[] replaceChar(@MustNotContainNull java.lang.String[] source, char toBeReplaced, char replacement)
-
extractTrimmedTail
public static java.lang.String extractTrimmedTail(java.lang.String prefix, java.lang.String value)
-
extractTail
public static java.lang.String extractTail(java.lang.String prefix, java.lang.String value)
-
copyFile
public static void copyFile(java.io.File source, java.io.File dest, boolean copyFileAttributes) throws java.io.IOException
- Throws:
java.io.IOException
-
copyFileAttributes
public static void copyFileAttributes(java.io.File from, java.io.File to)
-
replacePartByChar
public static java.lang.String replacePartByChar(java.lang.String text, char chr, int startPosition, int length)
-
generateStringForChar
public static java.lang.String generateStringForChar(char chr, int length)
-
processMacroses
public static java.lang.String processMacroses(java.lang.String processingString, PreprocessorContext context)
-
checkFile
private static void checkFile(java.io.File file) throws java.io.IOException
- Throws:
java.io.IOException
-
readWholeTextFileIntoArray
@MustNotContainNull public static java.lang.String[] readWholeTextFileIntoArray(java.io.File file, java.lang.String encoding, java.util.concurrent.atomic.AtomicBoolean endedByNextLine) throws java.io.IOException
- Throws:
java.io.IOException
-
readFileAsByteArray
public static byte[] readFileAsByteArray(java.io.File file) throws java.io.IOException
- Throws:
java.io.IOException
-
splitForEqualChar
@MustNotContainNull public static java.lang.String[] splitForEqualChar(java.lang.String string)
-
splitForCharAndHoldEmptyLine
@MustNotContainNull public static java.lang.String[] splitForCharAndHoldEmptyLine(java.lang.String string, char delimiter)
-
splitForChar
@MustNotContainNull public static java.lang.String[] splitForChar(java.lang.String string, char delimiter)
-
normalizeVariableName
public static java.lang.String normalizeVariableName(java.lang.String name)
-
getFilePath
public static java.lang.String getFilePath(java.io.File file)
-
throwPreprocessorException
public static void throwPreprocessorException(java.lang.String msg, java.lang.String processingString, java.io.File srcFile, int nextStringIndex, java.lang.Throwable cause)
-
replaceStringPrefix
@MustNotContainNull public static java.lang.String[] replaceStringPrefix(@MustNotContainNull java.lang.String[] allowedPrefixesToBeReplaced, java.lang.String replacement, @MustNotContainNull java.lang.String[] strings)
-
getNextLineCodes
public static java.lang.String getNextLineCodes()
-
leftTrim
public static java.lang.String leftTrim(java.lang.String rawString)
-
isFileContentEquals
public static boolean isFileContentEquals(java.io.File src, java.io.File dst) throws java.io.IOException
- Throws:
java.io.IOException
-
-