Ejemplo n.º 1
0
 /// <summary>
 /// Calculates the value from the parsed pieces.
 /// </summary>
 internal override ParseResult <Duration> CalculateValue(PatternFields usedFields, string text)
 {
     if (IsNegative)
     {
         currentNanos = -currentNanos;
     }
     if (currentNanos < Duration.MinNanoseconds || currentNanos > Duration.MaxNanoseconds)
     {
         return(ParseResult <Duration> .ForInvalidValuePostParse(text, TextErrorMessages.OverallValueOutOfRange,
                                                                 typeof(Duration)));
     }
     return(ParseResult <Duration> .ForValue(Duration.FromNanoseconds(currentNanos)));
 }
 /// <summary>
 /// Calculates the value from the parsed pieces.
 /// </summary>
 internal override ParseResult <Duration> CalculateValue(PatternFields usedFields, string text)
 {
     if (IsNegative)
     {
         currentNanos = -currentNanos;
     }
     if (currentNanos < MinNanos || currentNanos > MaxNanos)
     {
         // TODO: Work out whether this is really the best message. (Created a new one...)
         return(ParseResult <Duration> .ForInvalidValuePostParse(text, Messages.Parse_OverallValueOutOfRange,
                                                                 typeof(Duration)));
     }
     return(ParseResult <Duration> .ForValue(Duration.FromNanoseconds(currentNanos)));
 }