| Index: pkg/analyzer/lib/src/dart/element/builder.dart
|
| diff --git a/pkg/analyzer/lib/src/dart/element/builder.dart b/pkg/analyzer/lib/src/dart/element/builder.dart
|
| index ee136eb3c3975fc97c2e1e5f995e1de72e595065..7c74fdf8437110711c1d349198c07486e291fec6 100644
|
| --- a/pkg/analyzer/lib/src/dart/element/builder.dart
|
| +++ b/pkg/analyzer/lib/src/dart/element/builder.dart
|
| @@ -272,7 +272,7 @@ class ApiElementBuilder extends _BaseElementBuilder {
|
| _setCodeRange(element, node);
|
| element.metadata = _createElementAnnotations(node.metadata);
|
| setElementDocumentationComment(element, node);
|
| - if (node.externalKeyword != null) {
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| element.external = true;
|
| }
|
| element.functions = holder.functions;
|
| @@ -313,7 +313,7 @@ class ApiElementBuilder extends _BaseElementBuilder {
|
| _setCodeRange(getter, node);
|
| getter.metadata = _createElementAnnotations(node.metadata);
|
| setElementDocumentationComment(getter, node);
|
| - if (node.externalKeyword != null) {
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| getter.external = true;
|
| }
|
| getter.functions = holder.functions;
|
| @@ -341,7 +341,7 @@ class ApiElementBuilder extends _BaseElementBuilder {
|
| _setCodeRange(setter, node);
|
| setter.metadata = _createElementAnnotations(node.metadata);
|
| setElementDocumentationComment(setter, node);
|
| - if (node.externalKeyword != null) {
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| setter.external = true;
|
| }
|
| setter.functions = holder.functions;
|
| @@ -504,7 +504,7 @@ class ApiElementBuilder extends _BaseElementBuilder {
|
| element.metadata = _createElementAnnotations(node.metadata);
|
| setElementDocumentationComment(element, node);
|
| element.abstract = node.isAbstract;
|
| - if (node.externalKeyword != null) {
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| element.external = true;
|
| }
|
| element.functions = holder.functions;
|
| @@ -542,7 +542,7 @@ class ApiElementBuilder extends _BaseElementBuilder {
|
| _setCodeRange(getter, node);
|
| getter.metadata = _createElementAnnotations(node.metadata);
|
| setElementDocumentationComment(getter, node);
|
| - if (node.externalKeyword != null) {
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| getter.external = true;
|
| }
|
| getter.functions = holder.functions;
|
| @@ -570,7 +570,7 @@ class ApiElementBuilder extends _BaseElementBuilder {
|
| _setCodeRange(setter, node);
|
| setter.metadata = _createElementAnnotations(node.metadata);
|
| setElementDocumentationComment(setter, node);
|
| - if (node.externalKeyword != null) {
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| setter.external = true;
|
| }
|
| setter.functions = holder.functions;
|
| @@ -1217,7 +1217,8 @@ class LocalElementBuilder extends _BaseElementBuilder {
|
| _setCodeRange(element, node);
|
| setElementDocumentationComment(element, node);
|
| element.metadata = _createElementAnnotations(node.metadata);
|
| - if (node.externalKeyword != null) {
|
| + FunctionBody body = expression.body;
|
| + if (node.externalKeyword != null || body is NativeFunctionBody) {
|
| element.external = true;
|
| }
|
| element.functions = holder.functions;
|
| @@ -1226,7 +1227,6 @@ class LocalElementBuilder extends _BaseElementBuilder {
|
| element.parameters = holder.parameters;
|
| element.typeParameters = holder.typeParameters;
|
|
|
| - FunctionBody body = expression.body;
|
| if (body.isAsynchronous) {
|
| element.asynchronous = body.isAsynchronous;
|
| }
|
|
|