当前位置: 首页>>代码示例>>C#>>正文


C# IBuildManager.EvaluateTargets方法代码示例

本文整理汇总了C#中IBuildManager.EvaluateTargets方法的典型用法代码示例。如果您正苦于以下问题:C# IBuildManager.EvaluateTargets方法的具体用法?C# IBuildManager.EvaluateTargets怎么用?C# IBuildManager.EvaluateTargets使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IBuildManager的用法示例。


在下文中一共展示了IBuildManager.EvaluateTargets方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Finalize

	    public bool Finalize (IBuildManager manager, IWarningLogger log)
	    {
		if (DefaultTo != null && Values.Count < 1) {
		    if (DefaultTo is Result)
			AddResult ((Result) DefaultTo, null, -1);
		    else {
			BuiltItem[] bi = manager.EvaluateTargets (new int[1] { (int) DefaultTo });
		
			if (bi == null || bi[0].Result == null)
			    return true;
		    
			AddResult (bi[0].Result, bi[0].ResultPrint, -1);
		    }
		}
	    
		if ((Flags & ArgFlags.Optional) == 0 && Values.Count < 1) {
		    log.Error (3015, String.Format ("Argument \"{0}\" is not optional but has no values", this), null);
		    return true;
		}
	    
		if ((Flags & ArgFlags.Multi) == 0 && Values.Count > 1) {
		    log.Error (3016, String.Format ("Argument \"{0}\" is not multiple-valued but has multiple values", this), null);
		    return true;
		}

		return false;
	    }
开发者ID:emtees,项目名称:old-code,代码行数:27,代码来源:ArgCollector.cs

示例2: FinalizeArgs

	// evaluation
	
	public bool FinalizeArgs (IBuildManager manager, IWarningLogger logger) 
	{
	    int i;
	    
	    // evaluate deferred args
	    
	    int[] ids = new int[deferred.Count];
	    for (i = 0; i < deferred.Count; i++)
		ids[i] = deferred[i].target;
	    
	    BuiltItem[] bis = manager.EvaluateTargets (ids);
	    if (bis == null)
		return true;
	    
	    for (i = 0; i < deferred.Count; i++) {
		int aid = deferred[i].aid;
		
		if (aid < 0) {
		    if (Add (bis[i].Result, bis[i].ResultPrint, logger))
			return true;
		} else {
		    if (AddNamed (aid, bis[i].Result, bis[i].ResultPrint,
				  deferred[i].index_into_values, logger))
			return true;
		}
	    }
	    
	    deferred.Clear ();
	    
	    // check counts and types, apply defaults if needed
	    
	    for (i = 0; i < args.Length; i++) {
		if (args[i].Finalize (manager, logger))
		    return true;
	    }
	    
	    // Check target

	    if (need_target_name && target_name == null) {
		logger.Error (3015, "Rule needs target name but it has not been set", null);
		return true;
	    }

	    // all done
	    
	    args_finalized = true;
	    return false;
	}
开发者ID:emtees,项目名称:old-code,代码行数:50,代码来源:ArgCollector.cs


注:本文中的IBuildManager.EvaluateTargets方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。