public InferredTemplateModel GetInferredModelForPath(string path, UsedAs accessType) { var retval = GetContextForPath(path); retval.Usages.Add(accessType); return(retval); }
public static UsedAs MergeUsages(this UsedAs usedAs, Literal literal) { if (usedAs == UsedAs.Both) { return(UsedAs.Both); } if (usedAs == UsedAs.Input) { if (literal.UsedAs == UsedAs.Output) { return(UsedAs.Both); } else { return(UsedAs.Input); } } if (usedAs == UsedAs.Output) { if (literal.UsedAs == UsedAs.Input) { return(UsedAs.Both); } else { return(UsedAs.Output); } } return(UsedAs.Unknown); }
public static string ToShortString(this UsedAs usedAs) { switch (usedAs) { case UsedAs.Unknown: return(""); case UsedAs.Input: return("(in)"); case UsedAs.Output: return("(out)"); case UsedAs.Both: return("(in/out)"); default: throw new ArgumentOutOfRangeException(nameof(usedAs), usedAs, null); } }
public InferredTemplateModel GetInferredModelForPath(string path, UsedAs accessType) { var retval = this.GetContextForPath(path); retval.Usages.Add(accessType); return retval; }
public Literal(string name, UsedAs usedAs) { Name = name; UsedAs = usedAs; }