예제 #1
0
        private static IAstConverter CreateAstConverter(ISourceFile sourceFile, FileModuleLiteral module,
                                                        RuntimeModelContext runtimeModelContext, AbsolutePath specPath, AstConversionConfiguration conversionConfiguration, Workspace workspace)
        {
            var conversionContext = new AstConversionContext(runtimeModelContext, specPath, sourceFile, module);

            return(AstConverter.Create(runtimeModelContext.QualifierTable, conversionContext, conversionConfiguration, workspace));
        }
예제 #2
0
        public InterpolationConverter(AstConverter astConverter, AstConversionContext conversionContext)
        {
            Contract.Requires(astConverter != null);
            Contract.Requires(conversionContext != null);

            m_converter = astConverter;
            m_context   = conversionContext;

            m_literalConverter = new LiteralConverter(conversionContext);
            m_pathAtomInterpolateSelectorExpression = CreatePathAtomInterpolateSelectorExpression();
            m_stringInterpolationSelectorExpression = CreateStringInterpolateSelectorExpression();
        }
예제 #3
0
 public AstConverterWithExceptionWrappingDecorator(AstConversionContext conversionContext, IAstConverter decoratee)
 {
     m_conversionContext = conversionContext;
     m_decoratee         = decoratee;
 }
예제 #4
0
 public LiteralConverter(AstConversionContext context)
 {
     Contract.Requires(context != null);
     Context = context;
 }
예제 #5
0
        /// <nodoc />
        public QualifiersConverter(AstConversionContext conversionContext)
        {
            Contract.Requires(conversionContext != null);

            m_conversionContext = conversionContext;
        }