Skip to content

Commit

Permalink
Merge pull request #96 from kazuho/kazuho/clang-format
Browse files Browse the repository at this point in the history
specify the indent style (clang-format)
  • Loading branch information
kazuho authored Mar 6, 2017
2 parents 6b6b84a + a944d59 commit 1ebfc7b
Show file tree
Hide file tree
Showing 6 changed files with 935 additions and 882 deletions.
4 changes: 4 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
BasedOnStyle: "LLVM"
ColumnLimit: 132
AllowShortFunctionsOnASingleLine: None
SortIncludes: false
5 changes: 4 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,7 @@ install:
uninstall:
rm -f $(DESTDIR)$(includedir)/picojson.h

.PHONY: test check clean install uninstall
clang-format: picojson.h examples/github-issues.cc examples/iostream.cc examples/streaming.cc
clang-format -i $?

.PHONY: test check clean install uninstall clang-format
36 changes: 16 additions & 20 deletions examples/github-issues.cc
Original file line number Diff line number Diff line change
Expand Up @@ -29,42 +29,39 @@
#include "../picojson.h"

typedef struct {
char* data; // response data from server
size_t size; // response size of data
char *data; // response data from server
size_t size; // response size of data
} MEMFILE;

MEMFILE*
memfopen() {
MEMFILE* mf = (MEMFILE*) malloc(sizeof(MEMFILE));
MEMFILE *memfopen() {
MEMFILE *mf = (MEMFILE *)malloc(sizeof(MEMFILE));
mf->data = NULL;
mf->size = 0;
return mf;
}

void
memfclose(MEMFILE* mf) {
if (mf->data) free(mf->data);
void memfclose(MEMFILE *mf) {
if (mf->data)
free(mf->data);
free(mf);
}

size_t
memfwrite(char* ptr, size_t size, size_t nmemb, void* stream) {
MEMFILE* mf = (MEMFILE*) stream;
size_t memfwrite(char *ptr, size_t size, size_t nmemb, void *stream) {
MEMFILE *mf = (MEMFILE *)stream;
int block = size * nmemb;
if (!mf->data)
mf->data = (char*) malloc(block);
mf->data = (char *)malloc(block);
else
mf->data = (char*) realloc(mf->data, mf->size + block);
mf->data = (char *)realloc(mf->data, mf->size + block);
if (mf->data) {
memcpy(mf->data + mf->size, ptr, block);
mf->size += block;
}
return block;
}

char*
memfstrdup(MEMFILE* mf) {
char* buf = (char*)malloc(mf->size + 1);
char *memfstrdup(MEMFILE *mf) {
char *buf = (char *)malloc(mf->size + 1);
memcpy(buf, mf->data, mf->size);
buf[mf->size] = 0;
return buf;
Expand All @@ -73,12 +70,11 @@ memfstrdup(MEMFILE* mf) {
using namespace std;
using namespace picojson;

int
main(int argc, char* argv[]) {
int main(int argc, char *argv[]) {
char error[256];

MEMFILE* mf = memfopen();
CURL* curl = curl_easy_init();
MEMFILE *mf = memfopen();
CURL *curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, "https://api.github.com/repos/kazuho/picojson/issues");
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
curl_easy_setopt(curl, CURLOPT_USERAGENT, "curl");
Expand Down
13 changes: 6 additions & 7 deletions examples/iostream.cc
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,16 @@
*/
#include "../picojson.h"

int main(void)
{
int main(void) {
picojson::value v;

// read json value from stream
std::cin >> v;
if (std::cin.fail()) {
std::cerr << picojson::get_last_error() << std::endl;
return 1;
}

// dump json object
std::cout << "---- dump input ----" << std::endl;
std::cout << v << std::endl;
Expand All @@ -54,17 +53,17 @@ int main(void)
std::cout << "input is " << v.get<std::string>() << std::endl;
} else if (v.is<picojson::array>()) {
std::cout << "input is an array" << std::endl;
const picojson::array& a = v.get<picojson::array>();
const picojson::array &a = v.get<picojson::array>();
for (picojson::array::const_iterator i = a.begin(); i != a.end(); ++i) {
std::cout << " " << *i << std::endl;
}
} else if (v.is<picojson::object>()) {
std::cout << "input is an object" << std::endl;
const picojson::object& o = v.get<picojson::object>();
const picojson::object &o = v.get<picojson::object>();
for (picojson::object::const_iterator i = o.begin(); i != o.end(); ++i) {
std::cout << i->first << " " << i->second << std::endl;
}
}

return 0;
}
56 changes: 26 additions & 30 deletions examples/streaming.cc
Original file line number Diff line number Diff line change
Expand Up @@ -33,44 +33,40 @@
// and prints the x and y values to stdout

namespace {

class root_context : public picojson::deny_parse_context {
public:
bool parse_array_start() {
return true; // only allow array as root

class root_context : public picojson::deny_parse_context {
public:
bool parse_array_start() {
return true; // only allow array as root
}
template <typename Iter> bool parse_array_item(picojson::input<Iter> &in, size_t) {
picojson::value item;
// parse the array item
picojson::default_parse_context ctx(&item);
if (!picojson::_parse(ctx, in)) {
return false;
}
template <typename Iter> bool parse_array_item(picojson::input<Iter>& in, size_t) {
picojson::value item;
// parse the array item
picojson::default_parse_context ctx(&item);
if (! picojson::_parse(ctx, in)) {
return false;
}
// assert that the array item is a hash
if (! item.is<picojson::object>()) {
return false;
}
// print x and y
std::cout << item.get("x") << ',' << item.get("y").to_str()
<< std::endl;
return true;
// assert that the array item is a hash
if (!item.is<picojson::object>()) {
return false;
}
};

// print x and y
std::cout << item.get("x") << ',' << item.get("y").to_str() << std::endl;
return true;
}
};
}

int main(void)
{
int main(void) {
root_context ctx;
std::string err;

picojson::_parse(ctx, std::istream_iterator<char>(std::cin),
std::istream_iterator<char>(), &err);

if (! err.empty()) {

picojson::_parse(ctx, std::istream_iterator<char>(std::cin), std::istream_iterator<char>(), &err);

if (!err.empty()) {
std::cerr << err << std::endl;
return 1;
}

return 0;
}
Loading

0 comments on commit 1ebfc7b

Please sign in to comment.