32 lines
898 B
C#
32 lines
898 B
C#
namespace UniGLTF.JsonSchema.Schemas
|
|
{
|
|
/// <summary>
|
|
/// glTF の extensions, extras を処理するための専用クラス
|
|
/// </summary>
|
|
public class ExtensionJsonSchema : JsonSchemaBase
|
|
{
|
|
public ExtensionJsonSchema(in JsonSchemaSource source) : base(source)
|
|
{
|
|
}
|
|
|
|
public override string ValueType => "object";
|
|
|
|
public override bool IsInline => true;
|
|
|
|
public override string GenerateDeserializerCall(string callName, string argName)
|
|
{
|
|
return $"new glTFExtensionImport({argName})";
|
|
}
|
|
|
|
public override string CreateSerializationCondition(string argName)
|
|
{
|
|
return $"{argName}!=null";
|
|
}
|
|
|
|
public override string GenerateSerializerCall(string callName, string argName)
|
|
{
|
|
return $"({argName} as glTFExtension).Serialize(f)";
|
|
}
|
|
}
|
|
}
|