#
# Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

text-empty = ""
text-text = "string value"
text-array = [ "", "string value" ]

text {
    empty = ""
    text = "string value"
    array = [ "", "string value" ]
}


bool-n = false
bool-p = true
bool-array = [ false, true ]

bool {
    n = false
    p = true
    array = [ false, true ]
}


int-n = -2147483648
int-z = 0
int-p = 2147483647
int-array = [ -2147483648, 0, 2147483647 ]

int {
    n = -2147483648
    z = 0
    p = 2147483647
    array = [ -2147483648, 0, 2147483647 ]
}


long-n = -9223372036854775808
long-z = 0
long-p = 9223372036854775807
long-array = [ -9223372036854775808, 0, 9223372036854775807 ]

long {
    n = -9223372036854775808
    z = 0
    p = 9223372036854775807
    array = [ -9223372036854775808, 0, 9223372036854775807 ]
}


double-n = -1234.5678
double-z = 0
double-p = 1234.5678
double-array = [ -1234.5678, 0, 1234.5678 ]

double {
    n = -1234.5678
    z = 0
    p =  1234.5678
    array = [ -1234.5678, 0, 1234.5678 ]
}


uri-localhost = "http://localhost"
uri-array = [ "http://localhost", "http://localhost", "http://localhost" ]

uri {
    localhost = "http://localhost"
    array = [ "http://localhost", "http://localhost", "http://localhost" ]
}


mixed-array = [ [ "string value", { p = true } ], -2147483648, { o1 { p = 9223372036854775807, o2 { n = -1234.5678, o3 { localhost = "http://localhost" } } } } ]
mixed {
    array = [ [ "string value", { p = true } ], -2147483648, { o1 { p = 9223372036854775807, o2 { n = -1234.5678, o3 { localhost = "http://localhost" } } } } ]
}


tree {
    single1 = 23
    array1 = [ "Hello", 42, true ]
    object1 {
        single2 = 69
        array2 = [ "Hi", 68, false ]
    }
}


escaped {
    "oracle.com" {
        prop1 = val1
        prop2 = val2
    }
    oracle {
        com = 1
        cz = 2
    }
}
