概要
private static string ToLiteralString( object value )
{
if ( value == null ) return "null";
if ( value is bool boolValue ) return boolValue ? "true" : "false";
if ( value is float floatValue ) return $"{floatValue}f";
if ( value is long longValue ) return $"{longValue}L";
if ( value is uint uintValue ) return $"{uintValue}u";
if ( value is ulong ulongValue ) return $"{ulongValue}ul";
if ( value is decimal decimalValue ) return $"{decimalValue}m";
if ( value is char charValue ) return $"'{charValue}'";
if ( value is string stringValue ) return $@"""{stringValue}""";
return value.ToString();
}
Debug.Log( ToLiteralString( null ) );
Debug.Log( ToLiteralString( true ) );
Debug.Log( ToLiteralString( false ) );
Debug.Log( ToLiteralString( 1 ) );
Debug.Log( ToLiteralString( 1.1f ) );
Debug.Log( ToLiteralString( 1L ) );
Debug.Log( ToLiteralString( 1u ) );
Debug.Log( ToLiteralString( 1ul ) );
Debug.Log( ToLiteralString( 1m ) );
Debug.Log( ToLiteralString( 'P' ) );
Debug.Log( ToLiteralString( "ピカチュウ" ) );