mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-27 23:48:05 +00:00
Escape characters in jsonschema descriptions (#5644)
* Escape JSON Schema comments * Add quotes to monster comment Thus exercising the JSON Schema comment escape support.
This commit is contained in:
@@ -155,7 +155,12 @@ class JsonSchemaGenerator : public BaseGenerator {
|
|||||||
comment.append(*comment_line);
|
comment.append(*comment_line);
|
||||||
}
|
}
|
||||||
if (comment.size() > 0) {
|
if (comment.size() > 0) {
|
||||||
code_ += " \"description\" : \"" + comment + "\",";
|
std::string description;
|
||||||
|
if (!EscapeString(comment.c_str(), comment.length(), &description, true,
|
||||||
|
true)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
code_ += " \"description\" : " + description + ",";
|
||||||
}
|
}
|
||||||
code_ += " \"properties\" : {";
|
code_ += " \"properties\" : {";
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ using global::System;
|
|||||||
using global::System.Collections.Generic;
|
using global::System.Collections.Generic;
|
||||||
using global::FlatBuffers;
|
using global::FlatBuffers;
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
public struct Monster : IFlatbufferObject
|
public struct Monster : IFlatbufferObject
|
||||||
{
|
{
|
||||||
private Table __p;
|
private Table __p;
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import (
|
|||||||
MyGame "MyGame"
|
MyGame "MyGame"
|
||||||
)
|
)
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
type MonsterT struct {
|
type MonsterT struct {
|
||||||
Pos *Vec3T
|
Pos *Vec3T
|
||||||
Mana int16
|
Mana int16
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ import com.google.flatbuffers.*;
|
|||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
/**
|
/**
|
||||||
* an example documentation comment: monster object
|
* an example documentation comment: "monster object"
|
||||||
*/
|
*/
|
||||||
public final class Monster extends Table {
|
public final class Monster extends Table {
|
||||||
public static void ValidateVersion() { Constants.FLATBUFFERS_1_11_1(); }
|
public static void ValidateVersion() { Constants.FLATBUFFERS_1_11_1(); }
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import kotlin.math.sign
|
|||||||
import com.google.flatbuffers.*
|
import com.google.flatbuffers.*
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* an example documentation comment: monster object
|
* an example documentation comment: "monster object"
|
||||||
*/
|
*/
|
||||||
@Suppress("unused")
|
@Suppress("unused")
|
||||||
@ExperimentalUnsignedTypes
|
@ExperimentalUnsignedTypes
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
local flatbuffers = require('flatbuffers')
|
local flatbuffers = require('flatbuffers')
|
||||||
|
|
||||||
-- an example documentation comment: monster object
|
-- an example documentation comment: "monster object"
|
||||||
local Monster = {} -- the module
|
local Monster = {} -- the module
|
||||||
local Monster_mt = {} -- the class metatable
|
local Monster_mt = {} -- the class metatable
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ use \Google\FlatBuffers\Table;
|
|||||||
use \Google\FlatBuffers\ByteBuffer;
|
use \Google\FlatBuffers\ByteBuffer;
|
||||||
use \Google\FlatBuffers\FlatBufferBuilder;
|
use \Google\FlatBuffers\FlatBufferBuilder;
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
class Monster extends Table
|
class Monster extends Table
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import flatbuffers
|
|||||||
from flatbuffers.compat import import_numpy
|
from flatbuffers.compat import import_numpy
|
||||||
np = import_numpy()
|
np = import_numpy()
|
||||||
|
|
||||||
# an example documentation comment: monster object
|
# an example documentation comment: "monster object"
|
||||||
class Monster(object):
|
class Monster(object):
|
||||||
__slots__ = ['_tab']
|
__slots__ = ['_tab']
|
||||||
|
|
||||||
|
|||||||
@@ -1043,7 +1043,7 @@ struct MonsterT : public flatbuffers::NativeTable {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
struct Monster FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
struct Monster FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
||||||
typedef MonsterT NativeTableType;
|
typedef MonsterT NativeTableType;
|
||||||
typedef MonsterBuilder Builder;
|
typedef MonsterBuilder Builder;
|
||||||
|
|||||||
Binary file not shown.
@@ -66,7 +66,7 @@ table Referrable {
|
|||||||
id:ulong(key, hash:"fnv1a_64");
|
id:ulong(key, hash:"fnv1a_64");
|
||||||
}
|
}
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
table Monster {
|
table Monster {
|
||||||
pos:Vec3 (id: 0);
|
pos:Vec3 (id: 0);
|
||||||
hp:short = 100 (id: 2);
|
hp:short = 100 (id: 2);
|
||||||
|
|||||||
@@ -147,7 +147,7 @@
|
|||||||
},
|
},
|
||||||
"MyGame_Example_Monster" : {
|
"MyGame_Example_Monster" : {
|
||||||
"type" : "object",
|
"type" : "object",
|
||||||
"description" : " an example documentation comment: monster object",
|
"description" : " an example documentation comment: \"monster object\"",
|
||||||
"properties" : {
|
"properties" : {
|
||||||
"pos" : {
|
"pos" : {
|
||||||
"$ref" : "#/definitions/MyGame_Example_Vec3"
|
"$ref" : "#/definitions/MyGame_Example_Vec3"
|
||||||
|
|||||||
@@ -167,10 +167,10 @@ struct MonsterBinarySchema {
|
|||||||
0x02,0x00,0x00,0x00,0x75,0x38,0x00,0x00,0x5E,0xDD,0xFF,0xFF,0x00,0x00,0x04,0x00,0x18,0x00,0x00,0x00,
|
0x02,0x00,0x00,0x00,0x75,0x38,0x00,0x00,0x5E,0xDD,0xFF,0xFF,0x00,0x00,0x04,0x00,0x18,0x00,0x00,0x00,
|
||||||
0x0C,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x9A,0xDC,0xFF,0xFF,0x00,0x00,0x00,0x03,
|
0x0C,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x9A,0xDC,0xFF,0xFF,0x00,0x00,0x00,0x03,
|
||||||
0x02,0x00,0x00,0x00,0x69,0x38,0x00,0x00,0xDA,0xDD,0xFF,0xFF,0x18,0x01,0x00,0x00,0x4C,0x00,0x00,0x00,
|
0x02,0x00,0x00,0x00,0x69,0x38,0x00,0x00,0xDA,0xDD,0xFF,0xFF,0x18,0x01,0x00,0x00,0x4C,0x00,0x00,0x00,
|
||||||
0x01,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x31,0x00,0x00,0x00,
|
0x01,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x33,0x00,0x00,0x00,
|
||||||
0x20,0x61,0x6E,0x20,0x65,0x78,0x61,0x6D,0x70,0x6C,0x65,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,
|
0x20,0x61,0x6E,0x20,0x65,0x78,0x61,0x6D,0x70,0x6C,0x65,0x20,0x64,0x6F,0x63,0x75,0x6D,0x65,0x6E,0x74,
|
||||||
0x61,0x74,0x69,0x6F,0x6E,0x20,0x63,0x6F,0x6D,0x6D,0x65,0x6E,0x74,0x3A,0x20,0x6D,0x6F,0x6E,0x73,0x74,
|
0x61,0x74,0x69,0x6F,0x6E,0x20,0x63,0x6F,0x6D,0x6D,0x65,0x6E,0x74,0x3A,0x20,0x22,0x6D,0x6F,0x6E,0x73,
|
||||||
0x65,0x72,0x20,0x6F,0x62,0x6A,0x65,0x63,0x74,0x00,0x00,0x00,0x31,0x00,0x00,0x00,0xC0,0x01,0x00,0x00,
|
0x74,0x65,0x72,0x20,0x6F,0x62,0x6A,0x65,0x63,0x74,0x22,0x00,0x31,0x00,0x00,0x00,0xC0,0x01,0x00,0x00,
|
||||||
0x1C,0x02,0x00,0x00,0x7C,0x02,0x00,0x00,0xD4,0x02,0x00,0x00,0xB0,0x06,0x00,0x00,0x90,0x17,0x00,0x00,
|
0x1C,0x02,0x00,0x00,0x7C,0x02,0x00,0x00,0xD4,0x02,0x00,0x00,0xB0,0x06,0x00,0x00,0x90,0x17,0x00,0x00,
|
||||||
0xEC,0x14,0x00,0x00,0x04,0x0C,0x00,0x00,0x78,0x18,0x00,0x00,0xD8,0x19,0x00,0x00,0xF8,0x17,0x00,0x00,
|
0xEC,0x14,0x00,0x00,0x04,0x0C,0x00,0x00,0x78,0x18,0x00,0x00,0xD8,0x19,0x00,0x00,0xF8,0x17,0x00,0x00,
|
||||||
0x48,0x1A,0x00,0x00,0x2C,0x19,0x00,0x00,0x34,0x04,0x00,0x00,0x6C,0x0A,0x00,0x00,0xB0,0x1A,0x00,0x00,
|
0x48,0x1A,0x00,0x00,0x2C,0x19,0x00,0x00,0x34,0x04,0x00,0x00,0x6C,0x0A,0x00,0x00,0xB0,0x1A,0x00,0x00,
|
||||||
|
|||||||
@@ -1269,7 +1269,7 @@ inline bool operator!=(const MonsterT &lhs, const MonsterT &rhs) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
struct Monster FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
struct Monster FLATBUFFERS_FINAL_CLASS : private flatbuffers::Table {
|
||||||
typedef MonsterT NativeTableType;
|
typedef MonsterT NativeTableType;
|
||||||
typedef MonsterBuilder Builder;
|
typedef MonsterBuilder Builder;
|
||||||
|
|||||||
@@ -985,7 +985,7 @@ MyGame.Example.Referrable.createReferrable = function(builder, id) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* an example documentation comment: monster object
|
* an example documentation comment: "monster object"
|
||||||
*
|
*
|
||||||
* @constructor
|
* @constructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -208,7 +208,7 @@ struct ReferrableBuilder:
|
|||||||
def end():
|
def end():
|
||||||
return b_.EndObject()
|
return b_.EndObject()
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
class Monster : flatbuffers_handle
|
class Monster : flatbuffers_handle
|
||||||
def pos():
|
def pos():
|
||||||
let o = buf_.flatbuffers_field_struct(pos_, 4)
|
let o = buf_.flatbuffers_field_struct(pos_, 4)
|
||||||
|
|||||||
@@ -1028,7 +1028,7 @@ impl<'a: 'b, 'b> ReferrableBuilder<'a, 'b> {
|
|||||||
pub enum MonsterOffset {}
|
pub enum MonsterOffset {}
|
||||||
#[derive(Copy, Clone, Debug, PartialEq)]
|
#[derive(Copy, Clone, Debug, PartialEq)]
|
||||||
|
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
pub struct Monster<'a> {
|
pub struct Monster<'a> {
|
||||||
pub _tab: flatbuffers::Table<'a>,
|
pub _tab: flatbuffers::Table<'a>,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -838,7 +838,7 @@ static createReferrable(builder:flatbuffers.Builder, id:flatbuffers.Long):flatbu
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* an example documentation comment: monster object
|
* an example documentation comment: "monster object"
|
||||||
*
|
*
|
||||||
* @constructor
|
* @constructor
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -717,7 +717,7 @@ class ReferrableObjectBuilder extends fb.ObjectBuilder {
|
|||||||
return fbBuilder.finish(offset, fileIdentifier);
|
return fbBuilder.finish(offset, fileIdentifier);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/// an example documentation comment: monster object
|
/// an example documentation comment: "monster object"
|
||||||
class Monster {
|
class Monster {
|
||||||
Monster._(this._bc, this._bcOffset);
|
Monster._(this._bc, this._bcOffset);
|
||||||
factory Monster(List<int> bytes) {
|
factory Monster(List<int> bytes) {
|
||||||
|
|||||||
Reference in New Issue
Block a user