• Home
  • Raw
  • Download

Lines Matching +full:build +full:- +full:dart

10    - Write a FlatBuffer `schema` file.
11 - Use the `flatc` FlatBuffer compiler.
12 - Parse [JSON](http://json.org) files that conform to a schema into
14 - Use the generated files in many of the supported languages (such as C++,
34 <input type="radio" name="language" value="dart">Dart</input>
45 * Check if an HTML `class` attribute is in the language-specific format.
47 * 'language-{lang}', where {lang} is a programming language (e.g. 'cpp',
50 * format, prefixed with 'language-'. Otherwise, it returns false.
53 if (languageClass && languageClass.substring(0, 9) == 'language-' &&
62 * Given a language-specific HTML `class` attribute, extract the language.
64 * in the format `language-{lang}`, where {lang} is a programming language
108 <div class="language-c">
112 For your chosen language, please cross-reference with:
114 <div class="language-cpp">
117 <div class="language-java">
120 <div class="language-kotlin">
123 <div class="language-csharp">
126 <div class="language-go">
129 <div class="language-python">
132 <div class="language-javascript">
135 <div class="language-typescript">
138 <div class="language-php">
141 <div class="language-c">
144 <div class="language-dart">
145 [example.dart](https://github.com/google/flatbuffers/blob/master/dart/example/example.dart)
147 <div class="language-lua">
150 <div class="language-lobster">
153 <div class="language-rust">
156 <div class="language-swift">
239 The `Weapon` table is a sub-table used within our FlatBuffer. It is
272 [these instructions](@ref flatbuffers_guide_building) to build `flatc`, the
277 <div class="language-c">
280 See [flatcc build instructions](https://github.com/dvidelabs/flatcc#building).
285 <div class="language-cpp">
288 ./../flatc --cpp monster.fbs
291 <div class="language-java">
294 ./../flatc --java monster.fbs
297 <div class="language-kotlin">
300 ./../flatc --kotlin monster.fbs
303 <div class="language-csharp">
306 ./../flatc --csharp monster.fbs
309 <div class="language-go">
312 ./../flatc --go monster.fbs
315 <div class="language-python">
318 ./../flatc --python monster.fbs
321 <div class="language-javascript">
324 ./../flatc --ts monster.fbs
325 # customize your TS -> JS transpilation
329 <div class="language-typescript">
332 ./../flatc --ts monster.fbs
335 <div class="language-php">
338 ./../flatc --php monster.fbs
341 <div class="language-c">
344 mkdir -p build/tmp/samples/monster
345 bin/flatcc -a -o build/tmp/samples/monster samples/monster/monster.fbs
347 flatcc/samples/monster/build.sh
350 <div class="language-dart">
353 ./../flatc --dart monster.fbs
356 <div class="language-lua">
359 ./../flatc --lua monster.fbs
362 <div class="language-lobster">
365 ./../flatc --lobster monster.fbs
368 <div class="language-rust">
371 ./../flatc --rust monster.fbs
374 <div class="language-swift">
377 ./../flatc --swift monster.fbs
395 <div class="language-cpp">
402 <div class="language-java">
409 <div class="language-kotlin">
416 <div class="language-csharp">
422 <div class="language-go">
430 <div class="language-python">
442 <div class="language-javascript">
444 // The following code is an example - use your desired module flavor by transpiling from TS.
448 //--------------------------------------------------------------------------//
450 // The following code is for browser-based HTML/JavaScript. Use the above code
456 <div class="language-typescript">
463 <div class="language-php">
485 <div class="language-c">
493 // A helper to simplify creating vectors from C-arrays.
497 <div class="language-dart">
498 ~~~{.dart}
499 import 'package:flat_buffers/flat_buffers.dart' as fb;
502 import 'monster_my_game.sample_generated.dart' as myGame;
505 <div class="language-lua">
507 -- require the flatbuffers module
510 -- require the generated files from `flatc`.
518 <div class="language-lobster">
524 <div class="language-rust">
540 <div class="language-swift">
560 <div class="language-cpp">
567 <div class="language-java">
574 <div class="language-kotlin">
581 <div class="language-csharp">
588 <div class="language-go">
595 <div class="language-python">
602 <div class="language-javascript">
609 <div class="language-typescript">
616 <div class="language-php">
623 <div class="language-c">
631 <div class="language-dart">
632 ~~~{.dart}
640 <div class="language-lua">
642 -- get access to the builder, providing an array of size 1024
646 <div class="language-lobster">
652 <div class="language-rust">
654 // Build up a serialized buffer algorithmically.
659 <div class="language-swift">
669 <div class="language-cpp">
682 <div class="language-java">
695 <div class="language-kotlin">
708 <div class="language-csharp">
721 <div class="language-go">
739 <div class="language-python">
757 <div class="language-javascript">
775 <div class="language-typescript">
793 <div class="language-php">
796 $weapon_one_name = $builder->createString("Sword");
799 $weapon_two_name = $builder->createString("Axe");
808 <div class="language-c">
820 <div class="language-dart">
821 ~~~{.dart}
865 <div class="language-lua">
870 -- Create the first 'Weapon'
876 -- Create the second 'Weapon'
883 <div class="language-lobster">
897 <div class="language-rust">
915 <div class="language-swift">
943 contained therein, i.e. we serialize the data tree using depth-first, pre-order
946 <div class="language-cpp">
957 <div class="language-java">
968 <div class="language-kotlin">
979 <div class="language-csharp">
988 for (int i = 9; i >= 0; i--)
995 <div class="language-go">
1004 for i := 9; i >= 0; i-- {
1010 <div class="language-python">
1024 <div class="language-javascript">
1035 <div class="language-typescript">
1046 <div class="language-php">
1049 $name = $builder->createString("Orc");
1057 <div class="language-c">
1060 // The _str suffix indicates the source is an ascii-z string.
1071 <div class="language-dart">
1072 ~~~{.dart}
1091 <div class="language-lua">
1093 -- Serialize a name for our monster, called 'orc'
1096 -- Create a `vector` representing the inventory of the Orc. Each number
1097 -- could correspond to an item that can be claimed after he is slain.
1098 -- Note: Since we prepend the bytes, this loop iterates in reverse.
1100 for i=10,1,-1 do
1106 <div class="language-lobster">
1115 <div class="language-rust">
1124 <div class="language-swift">
1135 We serialized two built-in data types (`string` and `vector`) and captured
1153 <div class="language-cpp">
1162 <div class="language-java">
1174 <div class="language-kotlin">
1184 <div class="language-csharp">
1194 <div class="language-go">
1204 <div class="language-python">
1214 <div class="language-javascript">
1222 <div class="language-typescript">
1230 <div class="language-php">
1238 <div class="language-c">
1247 <div class="language-dart">
1248 ~~~{.dart}
1256 <div class="language-lua">
1258 -- Create a FlatBuffer vector and prepend the weapons.
1259 -- Note: Since we prepend the data, prepend them in reverse order.
1266 <div class="language-lobster">
1271 <div class="language-rust">
1278 <div class="language-swift">
1294 structs are stored in-line in the vector. For example, to create a vector
1297 <div class="language-cpp">
1303 <div class="language-java">
1311 <div class="language-kotlin">
1319 <div class="language-csharp">
1327 <div class="language-go">
1335 <div class="language-python">
1343 <div class="language-javascript">
1351 <div class="language-typescript">
1359 <div class="language-php">
1364 $path = $builder->endVector();
1367 <div class="language-c">
1372 <div class="language-dart">
1373 ~~~{.dart}
1382 // The dart implementation provides a simple interface for writing vectors
1391 <div class="language-lua">
1393 -- Create a FlatBuffer vector and prepend the path locations.
1394 -- Note: Since we prepend the data, prepend them in reverse order.
1401 <div class="language-lobster">
1409 <div class="language-rust">
1421 <div class="language-swift">
1443 We have now serialized the non-scalar components of the orc, so we
1446 <div class="language-cpp">
1462 <div class="language-java">
1478 <div class="language-kotlin">
1494 <div class="language-csharp">
1510 <div class="language-go">
1526 <div class="language-python">
1545 <div class="language-javascript">
1562 <div class="language-typescript">
1579 <div class="language-php">
1596 <div class="language-c">
1610 <div class="language-dart">
1611 ~~~{.dart}
1632 // -Or- using the ObjectBuilder API:
1637 // Note that these parameters are optional - it is not necessary to set
1640 // - the generated code will automatically reuse offsets if the same object
1662 <div class="language-lua">
1664 -- Create our monster by using Start() andEnd()
1678 <div class="language-lobster">
1694 <div class="language-rust">
1698 // needed to build a `Monster`. To supply empty/default fields, just use the
1699 // Rust built-in `Default::default()` function, as demonstrated below.
1715 <div class="language-swift">
1730 Note how we create `Vec3` struct in-line in the table. Unlike tables, structs
1746 <div class="language-cpp">
1768 <div class="language-c">
1794 <div class="language-swift">
1820 <div class="language-cpp">
1826 <div class="language-java">
1832 <div class="language-kotlin">
1838 <div class="language-csharp">
1844 <div class="language-go">
1850 <div class="language-python">
1857 <div class="language-javascript">
1863 <div class="language-typescript">
1869 <div class="language-php">
1875 <div class="language-c">
1881 <div class="language-dart">
1882 ~~~{.dart}
1892 <div class="language-lua">
1894 monster.AddEquippedType(builder, equipment.Weapon) -- Union type
1895 monster.AddEquipped(builder, axe) -- Union data
1898 <div class="language-lobster">
1904 <div class="language-rust">
1912 <div class="language-swift">
1925 <div class="language-cpp">
1933 <div class="language-java">
1939 <div class="language-kotlin">
1945 <div class="language-csharp">
1951 <div class="language-go">
1957 <div class="language-python">
1963 <div class="language-javascript">
1969 <div class="language-typescript">
1975 <div class="language-php">
1978 …$builder->finish($orc); // You may also call `\MyGame\Sample\Monster::FinishMonsterBuffer($builder…
1981 <div class="language-c">
1986 <div class="language-dart">
1987 ~~~{.dart}
1989 // See the next code section, as in Dart `finish` will also return the byte array.
1992 <div class="language-lua">
1994 -- Call 'Finish()' to instruct the builder that this monster is complete.
1998 <div class="language-lobster">
2004 <div class="language-rust">
2010 <div class="language-swift">
2021 <div class="language-cpp">
2029 <div class="language-java">
2040 <div class="language-kotlin">
2051 <div class="language-csharp">
2057 // buf.Length - buf.Position.
2063 <div class="language-go">
2069 <div class="language-python">
2075 <div class="language-javascript">
2081 <div class="language-typescript">
2087 <div class="language-php">
2090 $buf = $builder->dataBuffer(); // Of type `Google\FlatBuffers\ByteBuffer`
2091 // The data in this ByteBuffer does NOT start at 0, but at buf->getPosition().
2092 // The end of the data is marked by buf->capacity(), so the size is
2093 // buf->capacity() - buf->getPosition().
2096 <div class="language-c">
2112 // build next buffer.
2119 <div class="language-dart">
2120 ~~~{.dart}
2124 <div class="language-lua">
2126 -- Get the flatbuffer as a string containing the binary data
2130 <div class="language-lobster">
2136 <div class="language-rust">
2143 <div class="language-swift">
2158 <div class="language-javascript">
2164 <div class="language-typescript">
2180 <div class="language-cpp">
2187 <div class="language-java">
2194 <div class="language-kotlin">
2201 <div class="language-csharp">
2207 <div class="language-go">
2215 <div class="language-python">
2226 <div class="language-javascript">
2228 // The following code is an example - use your desired module flavor by transpiling from TS.
2232 //--------------------------------------------------------------------------//
2234 // The following code an example for browser-based HTML/JavaScript. Use the above code
2240 <div class="language-typescript">
2248 <div class="language-php">
2270 <div class="language-c">
2279 <div class="language-dart">
2280 ~~~{.dart}
2281 import 'package:flat_buffers/flat_buffers.dart' as fb;
2282 import './monster_my_game.sample_generated.dart' as myGame;
2285 <div class="language-lua">
2287 -- require the flatbuffers module
2290 -- require the generated files from `flatc`.
2298 <div class="language-lobster">
2304 <div class="language-rust">
2327 <div class="language-cpp">
2337 // the latter is also available for non-root types.
2340 <div class="language-java">
2349 <div class="language-kotlin">
2358 <div class="language-csharp">
2367 <div class="language-go">
2380 <div class="language-python">
2393 <div class="language-javascript">
2396 // Note that the example here uses `readFileSync` from the built-in `fs` module,
2406 <div class="language-typescript">
2409 // Note that the example here uses `readFileSync` from the built-in `fs` module,
2419 <div class="language-php">
2428 <div class="language-c">
2438 <div class="language-dart">
2439 ~~~{.dart}
2445 <div class="language-lua">
2447 local bufAsString = -- The data you just read in
2449 -- Convert the string representation into binary array Lua structure
2452 -- Get an accessor to the root object insert the buffer
2456 <div class="language-lobster">
2464 <div class="language-rust">
2472 <div class="language-swift">
2483 accessors for all non-`deprecated` fields. For example:
2485 <div class="language-cpp">
2487 auto hp = monster->hp();
2488 auto mana = monster->mana();
2489 auto name = monster->name()->c_str();
2492 <div class="language-java">
2499 <div class="language-kotlin">
2506 <div class="language-csharp">
2515 <div class="language-go">
2522 <div class="language-python">
2529 <div class="language-javascript">
2536 <div class="language-typescript">
2543 <div class="language-php">
2545 $hp = $monster->getHp();
2546 $mana = $monster->getMana();
2547 $name = monster->getName();
2550 <div class="language-c">
2557 <div class="language-dart">
2558 ~~~{.dart}
2559 // For Dart, unlike other languages support by FlatBuffers, most values
2566 <div class="language-lua">
2573 <div class="language-lobster">
2580 <div class="language-rust">
2588 <div class="language-swift">
2600 To access sub-objects, in the case of our `pos`, which is a `Vec3`:
2602 <div class="language-cpp">
2604 auto pos = monster->pos();
2605 auto x = pos->x();
2606 auto y = pos->y();
2607 auto z = pos->z();
2610 <div class="language-java">
2618 <div class="language-kotlin">
2626 <div class="language-csharp">
2634 <div class="language-go">
2648 <div class="language-python">
2656 <div class="language-javascript">
2664 <div class="language-typescript">
2672 <div class="language-php">
2674 $pos = $monster->getPos();
2675 $x = $pos->getX();
2676 $y = $pos->getY();
2677 $z = $pos->getZ();
2680 <div class="language-c">
2688 <div class="language-dart">
2689 ~~~{.dart}
2696 <div class="language-lua">
2704 <div class="language-lobster">
2712 <div class="language-rust">
2720 <div class="language-swift">
2731 *Note: Had we not set `pos` during serialization, it would be a `null`-value.*
2737 <div class="language-cpp">
2739 auto inv = monster->inventory(); // A pointer to a `flatbuffers::Vector<>`.
2740 auto inv_len = inv->size();
2741 auto third_item = inv->Get(2);
2744 <div class="language-java">
2750 <div class="language-kotlin">
2756 <div class="language-csharp">
2762 <div class="language-go">
2768 <div class="language-python">
2774 <div class="language-javascript">
2780 <div class="language-typescript">
2786 <div class="language-php">
2788 $inv_len = $monster->getInventoryLength();
2789 $third_item = $monster->getInventory(2);
2792 <div class="language-c">
2800 <div class="language-dart">
2801 ~~~{.dart}
2806 <div class="language-lua">
2809 local thirdItem = mon:Inventory(3) -- Lua is 1-based
2812 <div class="language-lobster">
2818 <div class="language-rust">
2828 <div class="language-swift">
2845 <div class="language-cpp">
2847 auto weapons = monster->weapons(); // A pointer to a `flatbuffers::Vector<>`.
2848 auto weapon_len = weapons->size();
2849 auto second_weapon_name = weapons->Get(1)->name()->str();
2850 auto second_weapon_damage = weapons->Get(1)->damage()
2853 <div class="language-java">
2860 <div class="language-kotlin">
2867 <div class="language-csharp">
2874 <div class="language-go">
2885 <div class="language-python">
2892 <div class="language-javascript">
2899 <div class="language-typescript">
2906 <div class="language-php">
2908 $weapons_len = $monster->getWeaponsLength();
2909 $second_weapon_name = $monster->getWeapons(1)->getName();
2910 $second_weapon_damage = $monster->getWeapons(1)->getDamage();
2913 <div class="language-c">
2922 <div class="language-dart">
2923 ~~~{.dart}
2929 <div class="language-lua">
2936 <div class="language-lobster">
2943 <div class="language-rust">
2954 <div class="language-swift">
2971 <div class="language-cpp">
2973 auto union_type = monster->equipped_type();
2976 auto weapon = static_cast<const Weapon*>(monster->equipped()); // Requires `static_cast`
2979 auto weapon_name = weapon->name()->str(); // "Axe"
2980 auto weapon_damage = weapon->damage(); // 5
2984 <div class="language-java">
2997 <div class="language-kotlin">
3010 <div class="language-csharp">
3022 <div class="language-go">
3044 <div class="language-python">
3058 <div class="language-javascript">
3068 <div class="language-typescript">
3078 <div class="language-php">
3080 $union_type = $monster->getEquippedType();
3083 $weapon_name = $monster->getEquipped(new \MyGame\Sample\Weapon())->getName(); // "Axe"
3084 $weapon_damage = $monster->getEquipped(new \MyGame\Sample\Weapon())->getDamage(); // 5
3088 <div class="language-c">
3100 <div class="language-dart">
3101 ~~~{.dart}
3112 <div class="language-lua">
3120 local weaponName = unionWeapon:Name() -- 'Axe'
3121 local weaponDamage = unionWeapon:Damage() -- 5
3125 <div class="language-lobster">
3138 <div class="language-rust">
3150 <div class="language-swift">
3163 As you saw above, typically once you have created a FlatBuffer, it is read-only
3170 For this reason FlatBuffers can also be mutated in-place. While this is great
3175 To get non-const accessors, invoke `flatc` with `--gen-mutable`.
3180 <div class="language-cpp">
3182 auto monster = GetMutableMonster(buffer_pointer); // non-const
3183 monster->mutate_hp(10); // Set the table `hp` field.
3184 monster->mutable_pos()->mutate_z(4); // Set struct field.
3185 monster->mutable_inventory()->Mutate(0, 1); // Set vector element.
3188 <div class="language-java">
3196 <div class="language-kotlin">
3204 <div class="language-csharp">
3212 <div class="language-go">
3217 <div class="language-python">
3222 <div class="language-javascript">
3227 <div class="language-typescript">
3232 <div class="language-php">
3237 <div class="language-c">
3239 <API for in-place mutating FlatBuffers will not be supported in C
3240 (except in-place vector sorting is possible).>
3243 <div class="language-dart">
3244 ~~~{.dart}
3245 <API for mutating FlatBuffers not yet available in Dart.>
3248 <div class="language-lua">
3253 <div class="language-lobster">
3258 <div class="language-rust">
3263 <div class="language-swift">
3293 in your language through an object based API (`--gen-object-api`) or reflection.
3340 You can run this file through the `flatc` compiler with the `-b` flag and
3344 ./../flatc --binary monster.fbs monsterdata.json
3350 <div class="language-cpp">
3355 <div class="language-c">
3356 *Note: If you're working in C, the `flatcc --json` (not `flatc`)
3363 <div class="language-lobster">
3373 ./../flatc --json --raw-binary monster.fbs -- monsterdata.bin
3379 the `.bin` file using the `--raw-binary` option.
3383 `--defaults-json`.
3386 on `--strict-json` so that identifiers are quoted properly.
3438 <div class="language-cpp">
3441 <div class="language-typescript">
3444 <div class="language-php">
3447 <div class="language-java">
3450 <div class="language-csharp">
3482 <div class="language-kotlin">
3485 <div class="language-swift">
3490 <div class="language-csharp">
3519 <div class="language-cpp">
3522 <div class="language-java">
3525 <div class="language-kotlin">
3528 <div class="language-csharp">
3529 [Use in C#](@ref flatbuffers_guide_use_c-sharp)
3531 <div class="language-go">
3534 <div class="language-python">
3537 <div class="language-javascript">
3540 <div class="language-typescript">
3543 <div class="language-php">
3546 <div class="language-c">
3549 <div class="language-dart">
3550 [Use in Dart](@ref flatbuffers_guide_use_dart)
3552 <div class="language-lua">
3555 <div class="language-lobster">
3558 <div class="language-rust">
3561 <div class="language-swift">