blob: 88d7f277476eaca10f98cf3071fc90a31b9d0d3b [file] [log] [blame]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SHELL_PLATFORM_DARWIN_COMMON_FRAMEWORK_SOURCE_FLUTTERSTANDARDCODECINTERNAL_H_
#define SHELL_PLATFORM_DARWIN_COMMON_FRAMEWORK_SOURCE_FLUTTERSTANDARDCODECINTERNAL_H_
#import "flutter/shell/platform/darwin/common/framework/Headers/FlutterCodecs.h"
typedef NS_ENUM(NSInteger, FlutterStandardField) {
FlutterStandardFieldNil,
FlutterStandardFieldTrue,
FlutterStandardFieldFalse,
FlutterStandardFieldInt32,
FlutterStandardFieldInt64,
FlutterStandardFieldIntHex,
FlutterStandardFieldFloat64,
FlutterStandardFieldString,
FlutterStandardFieldUInt8Data,
FlutterStandardFieldInt32Data,
FlutterStandardFieldInt64Data,
FlutterStandardFieldFloat64Data,
FlutterStandardFieldList,
FlutterStandardFieldMap,
FlutterStandardFieldFloat32Data,
};
namespace flutter {
FlutterStandardField FlutterStandardFieldForDataType(FlutterStandardDataType type) {
switch (type) {
case FlutterStandardDataTypeUInt8:
return FlutterStandardFieldUInt8Data;
case FlutterStandardDataTypeInt32:
return FlutterStandardFieldInt32Data;
case FlutterStandardDataTypeInt64:
return FlutterStandardFieldInt64Data;
case FlutterStandardDataTypeFloat32:
return FlutterStandardFieldFloat32Data;
case FlutterStandardDataTypeFloat64:
return FlutterStandardFieldFloat64Data;
}
}
FlutterStandardDataType FlutterStandardDataTypeForField(FlutterStandardField field) {
switch (field) {
case FlutterStandardFieldUInt8Data:
return FlutterStandardDataTypeUInt8;
case FlutterStandardFieldInt32Data:
return FlutterStandardDataTypeInt32;
case FlutterStandardFieldInt64Data:
return FlutterStandardDataTypeInt64;
case FlutterStandardFieldFloat32Data:
return FlutterStandardDataTypeFloat32;
case FlutterStandardFieldFloat64Data:
return FlutterStandardDataTypeFloat64;
default:
return FlutterStandardDataTypeUInt8;
}
}
UInt8 elementSizeForFlutterStandardDataType(FlutterStandardDataType type) {
switch (type) {
case FlutterStandardDataTypeUInt8:
return 1;
case FlutterStandardDataTypeInt32:
return 4;
case FlutterStandardDataTypeInt64:
return 8;
case FlutterStandardDataTypeFloat32:
return 4;
case FlutterStandardDataTypeFloat64:
return 8;
}
}
} // namespace flutter
#endif // SHELL_PLATFORM_IOS_FRAMEWORK_SOURCE_FLUTTERSTANDARDCODECINTERNAL_H_