Exemplo n.º 1
0
 public void Compile(ModuleBuilder builder)
 {
     if (!_compiled)
     {
         Initialize();
         _creator.Compile(builder);
         if (_beforeMapAction != null)
         {
             _beforeMapBuilder = new ActionInvokerBuilder <TSource, TTarget>(_beforeMapAction);
             _beforeMapBuilder.Compile(builder);
         }
         if (_customMapper != null)
         {
             _customInvokerBuilder = new ActionInvokerBuilder <TSource, TTarget>(_customMapper);
             _customInvokerBuilder.Compile(builder);
         }
         else
         {
             foreach (var mapper in _memberMappers)
             {
                 mapper.Compile(builder);
             }
         }
         if (_afterMapAction != null)
         {
             _afterMapBuilder = new ActionInvokerBuilder <TSource, TTarget>(_afterMapAction);
             _afterMapBuilder.Compile(builder);
         }
         _compiled = true;
     }
 }