view contrib/chg/hgclient.h @ 30538:c2154979409d

merge: use original file extension for temporary files Some merge tools (like Araxis?) can pick merge mode based on the file extension. That didn't work well when temporary files were given random suffixes. It seems to work better when the random part is before the extension. As usual, when using $output, $local will have the .orig extension. That could perhaps be the subject of another change another day.
author Mads Kiilerich <madski@unity3d.com>
date Wed, 23 Nov 2016 23:47:38 +0100
parents c66bc06f1bf6
children fde9692a02c0
line wrap: on
line source

/*
 * A command server client that uses Unix domain socket
 *
 * Copyright (c) 2011 Yuya Nishihara <yuya@tcha.org>
 *
 * This software may be used and distributed according to the terms of the
 * GNU General Public License version 2 or any later version.
 */

#ifndef HGCLIENT_H_
#define HGCLIENT_H_

#include <sys/types.h>

struct hgclient_tag_;
typedef struct hgclient_tag_ hgclient_t;

hgclient_t *hgc_open(const char *sockname);
void hgc_close(hgclient_t *hgc);

pid_t hgc_peerpgid(const hgclient_t *hgc);
pid_t hgc_peerpid(const hgclient_t *hgc);

const char **hgc_validate(hgclient_t *hgc, const char *const args[],
			  size_t argsize);
int hgc_runcommand(hgclient_t *hgc, const char *const args[], size_t argsize);
void hgc_attachio(hgclient_t *hgc);
const char *hgc_getpager(hgclient_t *hgc, const char *const args[],
			 size_t argsize);
void hgc_setenv(hgclient_t *hgc, const char *const envp[]);

#endif  /* HGCLIENT_H_ */