// Copyright 2018 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. import 'package:jsonexample/dart_convert/converted_simple_object.dart'; class ConvertedComplexObject { const ConvertedComplexObject({ this.aString, this.anInt, this.aDouble, this.anObject, this.aListOfStrings, this.aListOfInts, this.aListOfDoubles, this.aListOfObjects, }); final String aString; final int anInt; final double aDouble; final ConvertedSimpleObject anObject; final List aListOfStrings; final List aListOfInts; final List aListOfDoubles; final List aListOfObjects; factory ConvertedComplexObject.fromJson(Map json) { if (json == null) return null; return ConvertedComplexObject( aString: json['aString'], anInt: json['anInt'], aDouble: json['aDouble'], anObject: json['anObject'] != null ? ConvertedSimpleObject.fromJson(json['anObject']) : null, aListOfStrings: json['aListOfStrings'] != null ? List.from(json['aListOfStrings']) : null, aListOfInts: json['aListOfInts'] != null ? List.from(json['aListOfInts']) : null, aListOfDoubles: json['aListOfDoubles'] != null ? List.from(json['aListOfDoubles']) : null, aListOfObjects: json['aListOfObjects'] != null ? List.from(json['aListOfObjects'] .map((o) => ConvertedSimpleObject.fromJson(o))) : null); } }