forked from EvilBeaver/OneScript
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEmptyModule.cs
More file actions
36 lines (30 loc) · 1.39 KB
/
EmptyModule.cs
File metadata and controls
36 lines (30 loc) · 1.39 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
36
/*----------------------------------------------------------
This Source Code Form is subject to the terms of the
Mozilla Public License, v.2.0. If a copy of the MPL
was not distributed with this file, You can obtain one
at http://mozilla.org/MPL/2.0/.
----------------------------------------------------------*/
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using OneScript.Contexts;
using OneScript.Execution;
namespace OneScript.Sources
{
public sealed class EmptyModule : IExecutableModule
{
public static readonly IExecutableModule Instance = new EmptyModule();
private EmptyModule()
{
ModuleBody = BslScriptMethodInfo.Create();
Source = SourceCodeBuilder.Create().FromString("").Build();
}
public IList<BslAnnotationAttribute> ModuleAttributes => Array.Empty<BslAnnotationAttribute>();
public IList<BslScriptFieldInfo> Fields => Array.Empty<BslScriptFieldInfo>();
public IList<BslScriptPropertyInfo> Properties => Array.Empty<BslScriptPropertyInfo>();
public IList<BslScriptMethodInfo> Methods => Array.Empty<BslScriptMethodInfo>();
public BslScriptMethodInfo ModuleBody { get; }
public SourceCode Source { get; }
public IDictionary<Type, object> Interfaces => new ReadOnlyDictionary<Type, object>(new Dictionary<Type, object>());
}
}