Adam Barth 8d20440658 Start sketching out new dart:ui API
This patch starts down the process of cleaning up the dart:ui API. In this
approach, we use Dart code to specify the interface instead of IDL. The code in
this patch is far from complete. It's just a sketch to see how this sort of
approach might work.
2015-10-12 11:12:05 -07:00

39 lines
1.1 KiB
Plaintext

// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
{# The warning below applies to the code generated by this template, not this file. #}
// WARNING: Do not edit - generated code.
#include "gen/sky/bindings/DartGlobal.h"
{% for interface in interfaces %}
#include "gen/sky/bindings/Dart{{interface.name}}.h"
{% endfor %}
namespace blink {
Dart_NativeFunction skySnapshotResolver(Dart_Handle name, int argumentCount, bool* autoSetupScope)
{
{% for interface in interfaces %}
{% if interface.has_resolver %}
if (Dart_NativeFunction func = Dart{{interface.name}}::Resolver(name, argumentCount, autoSetupScope))
return func;
{% endif %}
{% endfor %}
return 0;
}
const uint8_t* skySnapshotSymbolizer(Dart_NativeFunction nf)
{
{% for interface in interfaces %}
{% if interface.has_resolver %}
if (const uint8_t* r = Dart{{interface.name}}::Symbolizer(nf))
return r;
{% endif %}
{% endfor %}
return 0;
}
} // namespace blink