std.conv.parse  - multiple declarations
				Function parse
parse family of functions works quite like the to
family, except that:
- It only works with character ranges as input.
- It takes the input by reference. This means that rvalues (such
    as string literals) are not accepted: use toinstead.
- It advances the input to the position following the conversion.
- It does not throw if it could not convert the entire input.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source source
				
				)
				
				if (is(immutable(Target) == immutable(bool)) && isInputRange!Source && isSomeChar!(ElementType!Source));
						
					
				This overload parses a bool from a character input range.
Parameters
| Name | Description | 
|---|---|
| Target | the boolean type to convert to | 
| source | the lvalue of an input range | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- A boolifdoCountis set toNo.doCount 
- A tuplecontaining abooland asize_tifdoCountis set toYes.doCount 
Throws
A ConvException if the range does not represent a bool.
Note
All character input range conversions using to are forwarded
    to parse and do not require lvalues.
Example
import stdFunction parse
Parses an integer from a character input range.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  scope ref Source s
				
				)
				
				if (isIntegral!Target && !is(Target == enum) && isSomeChar!(ElementType!Source));
				
				
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source source,
				
				  uint radix
				
				)
				
				if (isIntegral!Target && !is(Target == enum) && isSomeChar!(ElementType!Source));
						
					
				Parameters
| Name | Description | 
|---|---|
| Target | the integral type to convert to | 
| s | the lvalue of an input range | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- A number of type TargetifdoCountis set toNo.doCount 
- A tuplecontaining a number of typeTargetand asize_tifdoCountis set toYes.doCount 
Throws
A ConvException If an overflow occurred during conversion or
    if no character of the input was meaningfully converted.
Example
import stdExample
import stdFunction parse
Parses an enum type from a string representing an enum member name.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s
				
				)
				
				if (is(Target == enum) && isSomeString!Source && !is(Source == enum));
						
					
				Parameters
| Name | Description | 
|---|---|
| Target | the enumtype to convert to | 
| s | the lvalue of the range to parse | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- An enumof typeTargetifdoCountis set toNo.doCount 
- A tuplecontaining anenumof typeTargetand asize_tifdoCountis set toYes.doCount 
Throws
A ConvException if type Target does not have a member
     represented by s.
Example
import stdFunction parse
Parses a floating point number from a character range.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source source
				
				)
				
				if (isFloatingPoint!Target && !is(Target == enum) && isInputRange!Source && isSomeChar!(ElementType!Source) && !is(Source == enum));
						
					
				Parameters
| Name | Description | 
|---|---|
| Target | a floating point type | 
| source | the lvalue of the range to parse | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- A floating point number of type TargetifdoCountis set toNo.doCount 
- A tuplecontaining a floating point number of·typeTargetand asize_tifdoCountis set toYes.doCount 
Throws
A ConvException if source is empty, if no number could be
     parsed, or if an overflow occurred.
Example
import stdFunction parse
Parses one character from a character range.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s
				
				)
				
				if (staticIndexOf!(immutable(Target), immutable(dchar), immutable(ElementEncodingType!Source)) >= 0 && isSomeString!Source && !is(Source == enum));
				
				
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s
				
				)
				
				if (isSomeChar!Target && (Target
				Parameters
| Name | Description | 
|---|---|
| Target | the type to convert to | 
| s | the lvalue of an input range | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- A character of type TargetifdoCountis set toNo.doCount 
- A tuplecontaining a character of typeTargetand asize_tifdoCountis set toYes.doCount 
Throws
A ConvException if the range is empty.
Example
import stdFunction parse
Parses typeof(null) from a character range if the range
spells "null". This function is case insensitive.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s
				
				)
				
				if (is(immutable(Target) == immutable(typeof(null))) && isInputRange!Source && isSomeChar!(ElementType!Source));
						
					
				Parameters
| Name | Description | 
|---|---|
| Target | the type to convert to | 
| s | the lvalue of an input range | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- nullif- doCountis set to- No- .doCount 
- A tuplecontainingnulland asize_tifdoCountis set toYes.doCount 
Throws
A ConvException if the range doesn't represent null.
Example
import stdFunction parse
Parses an array from a string given the left bracket (default  '['), right bracket (default ']'), and element separator (by
 default ','). A trailing separator is allowed.
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s,
				
				  dchar lbracket = '[',
				
				  dchar rbracket = ']',
				
				  dchar comma = ','
				
				)
				
				if (isDynamicArray!Target && !is(Target == enum) && isSomeString!Source && !is(Source == enum));
				
				
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s,
				
				  dchar lbracket = '[',
				
				  dchar rbracket = ']',
				
				  dchar comma = ','
				
				)
				
				if (isStaticArray!Target && !is(Target == enum) && isExactSomeString!Source);
						
					
				Parameters
| Name | Description | 
|---|---|
| s | The string to parse | 
| lbracket | the character that starts the array | 
| rbracket | the character that ends the array | 
| comma | the character that separates the elements of the array | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- An array of type TargetifdoCountis set toNo.doCount 
- A tuplecontaining an array of typeTargetand asize_tifdoCountis set toYes.doCount 
Example
import stdFunction parse
Parses an associative array from a string given the left bracket (default  '['), right bracket (default ']'), key-value separator (default  ':'), and element seprator (by default ',').
						
				auto parse(Target, Source, Flag!("doCount") doCount = No
				  ref Source s,
				
				  dchar lbracket = '[',
				
				  dchar rbracket = ']',
				
				  dchar keyval = ':',
				
				  dchar comma = ','
				
				)
				
				if (isAssociativeArray!Target && !is(Target == enum) && isSomeString!Source && !is(Source == enum));
						
					
				Parameters
| Name | Description | 
|---|---|
| s | the string to parse | 
| lbracket | the character that starts the associative array | 
| rbracket | the character that ends the associative array | 
| keyval | the character that associates the key with the value | 
| comma | the character that separates the elements of the associative array | 
| doCount | the flag for deciding to report the number of consumed characters | 
Returns
- An associative array of type TargetifdoCountis set toNo.doCount 
- A tuplecontaining an associative array of typeTargetand asize_tifdoCountis set toYes.doCount 
Example
import stdAuthors
Walter Bright, Andrei Alexandrescu, Shin Fujishiro, Adam D. Ruppe, Kenji Hara