// 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 FLUTTER_LIB_UI_PAINTING_RRECT_H_ #define FLUTTER_LIB_UI_PAINTING_RRECT_H_ #include "third_party/dart/runtime/include/dart_api.h" #include "third_party/skia/include/core/SkRRect.h" #include "third_party/tonic/converter/dart_converter.h" namespace flutter { class RRect { public: SkRRect sk_rrect; bool is_null; }; } // namespace flutter namespace tonic { template <> struct DartConverter { using NativeType = flutter::RRect; using FfiType = Dart_Handle; static constexpr const char* kFfiRepresentation = "Handle"; static constexpr const char* kDartRepresentation = "Object"; static constexpr bool kAllowedInLeafCall = false; static NativeType FromDart(Dart_Handle handle); static NativeType FromArguments(Dart_NativeArguments args, int index, Dart_Handle& exception); static NativeType FromFfi(FfiType val) { return FromDart(val); } static const char* GetFfiRepresentation() { return kFfiRepresentation; } static const char* GetDartRepresentation() { return kDartRepresentation; } static bool AllowedInLeafCall() { return kAllowedInLeafCall; } }; } // namespace tonic #endif // FLUTTER_LIB_UI_PAINTING_RRECT_H_