Esempio n. 1
0
        public IAstNode ProcessOperations()
        {
            var result = new AstComplexNode();

            foreach (var operation in operations)
            {
                IAstNode completeOperation = null;
                int      operationId       = AddObjectToStore(operation);

                if (operation is OperationsBlock)
                {
                    completeOperation =
                        new MappingOperationsProcessor(this)
                    {
                        operations = (operation as OperationsBlock).Operations
                    }.ProcessOperations();
                }
                else if (operation is ReadWriteComplex)
                {
                    completeOperation = Process_ReadWriteComplex(operation as ReadWriteComplex, operationId);
                }
                else if (operation is DestSrcReadOperation)
                {
                    completeOperation = ProcessDestSrcReadOperation(operation as DestSrcReadOperation, operationId);
                }
                else if (operation is SrcReadOperation)
                {
                    completeOperation = ProcessSrcReadOperation(operation as SrcReadOperation, operationId);
                }
                else if (operation is DestWriteOperation)
                {
                    completeOperation = ProcessDestWriteOperation(operation as DestWriteOperation, operationId);
                }
                else if (operation is ReadWriteSimple)
                {
                    completeOperation = ProcessReadWriteSimple(operation as ReadWriteSimple, operationId);
                }

                if (completeOperation == null)
                {
                    continue;
                }
                if (locException != null)
                {
                    var tryCatch = CreateExceptionHandlingBlock(operationId, completeOperation);
                    result.nodes.Add(tryCatch);
                }
                else
                {
                    result.nodes.Add(completeOperation);
                }
            }
            return(result);
        }
		public IAstNode ProcessOperations()
		{
			var result = new AstComplexNode();
			foreach (var operation in operations)
			{
				IAstNode completeOperation = null;
				int operationId = AddObjectToStore(operation);

				if (operation is OperationsBlock)
				{
					completeOperation = 
						new MappingOperationsProcessor(this) 
						{ 
							operations = (operation as OperationsBlock).Operations 
						}.ProcessOperations();
				}
                else if (operation is ReadWriteComplex)
                {
                    completeOperation = Process_ReadWriteComplex(operation as ReadWriteComplex, operationId);
                }
                else if (operation is DestSrcReadOperation)
                {
                    completeOperation = ProcessDestSrcReadOperation(operation as DestSrcReadOperation, operationId);
                }
				else if (operation is SrcReadOperation)
				{
					completeOperation = ProcessSrcReadOperation(operation as SrcReadOperation, operationId);
				}
				else if (operation is DestWriteOperation)
				{
					completeOperation = ProcessDestWriteOperation(operation as DestWriteOperation, operationId);
				}
				else if (operation is ReadWriteSimple)
				{
					completeOperation = ProcessReadWriteSimple(operation as ReadWriteSimple, operationId);
				}

				if (completeOperation == null)
				{
					continue;
				}
				if (locException != null)
				{
					var tryCatch = CreateExceptionHandlingBlock(operationId, completeOperation);
					result.nodes.Add(tryCatch);
				}
				else
				{
					result.nodes.Add(completeOperation);
				}
			}
			return result;
		}
Esempio n. 3
0
 public MappingOperationsProcessor(MappingOperationsProcessor prototype)
 {
     locFrom                 = prototype.locFrom;
     locTo                   = prototype.locTo;
     locState                = prototype.locState;
     locException            = prototype.locException;
     compilationContext      = prototype.compilationContext;
     operations              = prototype.operations;
     storedObjects           = prototype.storedObjects;
     mappingConfigurator     = prototype.mappingConfigurator;
     objectsMapperManager    = prototype.objectsMapperManager;
     rootOperation           = prototype.rootOperation;
     staticConvertersManager = prototype.staticConvertersManager;
 }
		public MappingOperationsProcessor(MappingOperationsProcessor prototype)
		{
			locFrom = prototype.locFrom;
			locTo = prototype.locTo;
			locState = prototype.locState;
			locException = prototype.locException;
			compilationContext = prototype.compilationContext;
			operations = prototype.operations;
			storedObjects = prototype.storedObjects;
			mappingConfigurator = prototype.mappingConfigurator;
			objectsMapperManager = prototype.objectsMapperManager;
			rootOperation = prototype.rootOperation;
			staticConvertersManager = prototype.staticConvertersManager;
		}
 public MappingOperationsProcessor(MappingOperationsProcessor prototype)
 {
     LocFrom                 = prototype.LocFrom;
     LocTo                   = prototype.LocTo;
     LocState                = prototype.LocState;
     LocException            = prototype.LocException;
     CompilationContext      = prototype.CompilationContext;
     Operations              = prototype.Operations;
     StoredObjects           = prototype.StoredObjects;
     MappingConfigurator     = prototype.MappingConfigurator;
     ObjectsMapperManager    = prototype.ObjectsMapperManager;
     RootOperation           = prototype.RootOperation;
     StaticConvertersManager = prototype.StaticConvertersManager;
 }