// File: /workspace/github_cpp_makefile_star2_O1/orbitcowboy[P]gnuplot-cpp/./gnuplot_i.hpp
// Function: void stringtok<std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>(std::__cxx11::list<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, char const*)
void stringtok (Container &container,
                std::string const &in,
                const char * const delimiters = " \t\n")
{
    const std::string::size_type len = in.length();
    std::string::size_type i = 0;

    while ( i < len )
    {
        // eat leading whitespace
        i = in.find_first_not_of (delimiters, i);

        if (i == std::string::npos)
        {
            return;    // nothing left but white space
        }

        // find the end of the token
        const std::string::size_type j = in.find_first_of (delimiters, i);

        // push token
        if (j == std::string::npos)
        {
            container.push_back (in.substr(i));
            return;
        }
        container.push_back (in.substr(i, j - i));

        // set up for next loop
        i = j + 1;
    }

    return;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x28, %rsp
movq %rdx, %rbx
movq %rsi, %r14
movq %rdi, %r15
movq 0x8(%rsi), %rax
movq %rax, 0x20(%rsp)
leaq 0x10(%rsp), %r12
xorl %ebp, %ebp
cmpq 0x20(%rsp), %rbp
jae 0xb16c
movq %rbx, %rdi
callq 0x3100
movq %r14, %rdi
movq %rbx, %rsi
movq %rbp, %rdx
movq %rax, %rcx
callq 0x3390
cmpq $-0x1, %rax
je 0xb16c
movq %rax, %rbp
movq %rbx, %rdi
callq 0x3100
movq %r14, %rdi
movq %rbx, %rsi
movq %rbp, %rdx
movq %rax, %rcx
callq 0x3300
movq %rax, %r13
cmpq $-0x1, %rax
je 0xb08a
movq %r13, %rcx
subq %rbp, %rcx
movq %rsp, %rdi
movq %r14, %rsi
movq %rbp, %rdx
callq 0x3230
movl $0x30, %edi
callq 0x3200
movq %rax, %rcx
addq $0x20, %rcx
movq %rcx, 0x10(%rax)
movq (%rsp), %rdx
cmpq %r12, %rdx
je 0xb0cc
movq %rdx, 0x10(%rax)
movq 0x10(%rsp), %rcx
movq %rcx, 0x20(%rax)
jmp 0xb0d4
movq %rsp, %rdi
movq %r14, %rsi
movq %rbp, %rdx
movq $-0x1, %rcx
callq 0x3230
movl $0x30, %edi
callq 0x3200
movq %rax, %rcx
addq $0x20, %rcx
movq %rcx, 0x10(%rax)
movq (%rsp), %rdx
cmpq %r12, %rdx
je 0xb11a
movq %rdx, 0x10(%rax)
movq 0x10(%rsp), %rcx
movq %rcx, 0x20(%rax)
jmp 0xb122
movups (%r12), %xmm0
movups %xmm0, (%rcx)
movq 0x8(%rsp), %rcx
movq %rcx, 0x18(%rax)
movq %r12, (%rsp)
movq $0x0, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
movq %rax, %rdi
movq %r15, %rsi
callq 0x3060
incq 0x10(%r15)
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0xb114
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3210
leaq 0x1(%r13), %rbp
jmp 0xb162
movups (%r12), %xmm0
movups %xmm0, (%rcx)
movq 0x8(%rsp), %rcx
movq %rcx, 0x18(%rax)
movq %r12, (%rsp)
movq $0x0, 0x8(%rsp)
movb $0x0, 0x10(%rsp)
movq %rax, %rdi
movq %r15, %rsi
callq 0x3060
incq 0x10(%r15)
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0xb162
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3210
cmpq $-0x1, %r13
jne 0xaff6
addq $0x28, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0xb17d
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r12, %rdi
je 0xb196
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x3210
movq %rbx, %rdi
callq 0x33f0