コード例 #1
0
        /// <summary>Gets the default value code.</summary>
        /// <param name="schema">The schema.</param>
        /// <param name="allowsNull">Specifies whether the default value assignment also allows null.</param>
        /// <param name="targetType">The type of the target.</param>
        /// <param name="typeNameHint">The type name hint to use when generating the type and the type name is missing.</param>
        /// <param name="useSchemaDefault">if set to <c>true</c> uses the default value from the schema if available.</param>
        /// <returns>The code.</returns>
        public virtual string GetDefaultValue(JsonSchema4 schema, bool allowsNull, string targetType, string typeNameHint, bool useSchemaDefault)
        {
            if (schema.Default == null || !useSchemaDefault)
            {
                return(null);
            }

            var actualSchema = schema is JsonProperty ? ((JsonProperty)schema).ActualTypeSchema : schema.ActualSchema;

            if (actualSchema.IsEnumeration && !actualSchema.Type.HasFlag(JsonObjectType.Object) && actualSchema.Type != JsonObjectType.None)
            {
                return(GetEnumDefaultValue(schema, actualSchema, typeNameHint));
            }

            if (schema.Type.HasFlag(JsonObjectType.String))
            {
                return("\"" + ConversionUtilities.ConvertToStringLiteral(schema.Default.ToString()) + "\"");
            }
            if (schema.Type.HasFlag(JsonObjectType.Boolean))
            {
                return(schema.Default.ToString().ToLowerInvariant());
            }
            if (schema.Type.HasFlag(JsonObjectType.Integer) ||
                schema.Type.HasFlag(JsonObjectType.Number))
            {
                return(GetNumericValue(schema.Type, schema.Default, schema.Format));
            }

            return(null);
        }
コード例 #2
0
 /// <summary>Gets the default value as string literal.</summary>
 /// <param name="schema">The schema.</param>
 /// <returns>The string literal.</returns>
 protected string GetDefaultAsStringLiteral(JsonSchema schema)
 {
     return("\"" + ConversionUtilities.ConvertToStringLiteral(schema.Default.ToString()) + "\"");
 }
コード例 #3
0
 public static string Literal(string input)
 {
     return("\"" + ConversionUtilities.ConvertToStringLiteral(input) + "\"");
 }
コード例 #4
0
            public static ValueTask <FluidValue> Literal(FluidValue input, FilterArguments arguments, TemplateContext context)
            {
                var converted = "\"" + ConversionUtilities.ConvertToStringLiteral(input.ToStringValue()) + "\"";

                return(new ValueTask <FluidValue>(new StringValue(converted, encode: false)));
            }