diff options
Diffstat (limited to 'BCT/BytecodeTranslator/TraverserFactory.cs')
-rw-r--r-- | BCT/BytecodeTranslator/TraverserFactory.cs | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/BCT/BytecodeTranslator/TraverserFactory.cs b/BCT/BytecodeTranslator/TraverserFactory.cs index 78c818bd..e680d2e0 100644 --- a/BCT/BytecodeTranslator/TraverserFactory.cs +++ b/BCT/BytecodeTranslator/TraverserFactory.cs @@ -14,10 +14,24 @@ using Microsoft.Cci.MutableCodeModel; using Microsoft.Cci.Contracts;
using Microsoft.Cci.ILToCodeModel;
+using TranslationPlugins;
+
using Bpl = Microsoft.Boogie;
namespace BytecodeTranslator {
public abstract class TraverserFactory {
+ // TODO this one factory method will have to go away and find the way to get the phone info into the traverser
+ // TODO in some other (better) way
+ public virtual MetadataTraverser MakeMetadataTraverser(Sink sink,
+ IDictionary<IUnit, IContractProvider> contractProviders,
+ IDictionary<IUnit, PdbReader> sourceLocationProviders,
+ PhoneControlsPlugin phonePlugin) {
+
+ MetadataTraverser traverser = new MetadataTraverser(sink, sourceLocationProviders);
+ traverser.PhonePlugin = phonePlugin;
+ return traverser;
+ }
+
public virtual MetadataTraverser MakeMetadataTraverser(Sink sink,
IDictionary<IUnit, IContractProvider> contractProviders, // TODO: remove this parameter?
IDictionary<IUnit, PdbReader> sourceLocationProviders)
|