forked from scriptcs/scriptcs
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPreProcessorUtil.cs
More file actions
35 lines (30 loc) · 1.07 KB
/
PreProcessorUtil.cs
File metadata and controls
35 lines (30 loc) · 1.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
namespace ScriptCs
{
public static class PreProcessorUtil
{
public const string LoadString = "#load ";
public const string UsingString = "using ";
public const string RString = "#r ";
public static bool IsNonDirectiveLine(string line)
{
return !IsRLine(line) && !IsLoadLine(line) && line.Trim() != string.Empty;
}
public static bool IsUsingLine(string line)
{
return line.TrimStart(' ').StartsWith(UsingString) && !line.Contains("{") && line.Contains(";");
}
public static bool IsRLine(string line)
{
return line.TrimStart(' ').StartsWith(RString);
}
public static bool IsLoadLine(string line)
{
return line.TrimStart(' ').StartsWith(LoadString);
}
public static string GetPath(string replaceString, string line)
{
var filepath = line.Trim(' ').Replace(replaceString, string.Empty).Replace("\"", string.Empty).Replace(";", string.Empty);
return filepath;
}
}
}