sbenning: add RL_NOT macro (aka: !RL_IS)

This commit is contained in:
m4s 2016-12-10 12:12:05 +01:00
parent 8f22367d91
commit 27ba76f08a
14 changed files with 31 additions and 29 deletions

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/08 18:02:25 by sbenning #+# #+# */
/* Updated: 2016/12/09 18:26:46 by sbenning ### ########.fr */
/* Updated: 2016/12/10 11:49:42 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -26,11 +26,13 @@
/*
* Bitset manipulation : X is the bitset and Y is the bit to manipulate
* IS : Is Y set in X
* NOT : Is Y not set in X
* SET : Set Y in X
* UNSET : Unset Y from X
*/
# define RL_IS(X, Y) (X & Y)
# define RL_NOT(X, Y) (!RL_IS(X, Y))
# define RL_SET(X, Y) (X |= Y)
# define RL_UNSET(X, Y) (X &= ~Y)

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/08 18:03:48 by sbenning #+# #+# */
/* Updated: 2016/12/09 18:27:49 by sbenning ### ########.fr */
/* Updated: 2016/12/10 11:50:51 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -60,7 +60,7 @@ static void rl_toogle_bitset(t_line *line, int set)
RL_UNSET(line->bitset, RL_ESC);
esc = 0;
}
if ((select && !RL_IS(line->bitset, RL_SELECT)) || (!select && RL_IS(line->bitset, RL_SELECT)))
if ((select && RL_NOT(line->bitset, RL_SELECT)) || (!select && RL_IS(line->bitset, RL_SELECT)))
{
rl_reset_display(line);
}
@ -75,7 +75,7 @@ static int rl_finish(t_line *line)
write(1, "\n", 1);
if (rl_stack_line(line) < 0)
return (-1);
if (!RL_IS(line->bitset, RL_FINISH))
if (RL_NOT(line->bitset, RL_FINISH))
{
if (curs_coo_setup(&line->curs) < 0)
return (-1);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/08 18:38:39 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:16:11 by sbenning ### ########.fr */
/* Updated: 2016/12/10 11:52:18 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -20,7 +20,7 @@ void rl_reset_display_post(t_line *line)
curs_clear_post(&line->curs);
if (len == 0)
return ;
if (!RL_IS(line->bitset, RL_SELECT) || (RL_IS(line->bitset, RL_SELECT) && line->select < line->pos))
if (RL_NOT(line->bitset, RL_SELECT) || (RL_IS(line->bitset, RL_SELECT) && line->select < line->pos))
{
curs_write_static(&line->curs, line->input + line->pos, len);
return;
@ -40,7 +40,7 @@ void rl_reset_display_ante(t_line *line)
if (!line->pos)
return ;
curs_backward(&line->curs, line->pos);
if (!RL_IS(line->bitset, RL_SELECT) || (RL_IS(line->bitset, RL_SELECT) && line->select > line->pos))
if (RL_NOT(line->bitset, RL_SELECT) || (RL_IS(line->bitset, RL_SELECT) && line->select > line->pos))
{
curs_write(&line->curs, line->input, line->pos);
return ;

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 00:46:36 by sbenning #+# #+# */
/* Updated: 2016/12/09 02:20:10 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:05:12 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -14,7 +14,7 @@
int rl_dquote_function(t_line *line, long int input)
{
if (!RL_IS(line->bitset, RL_ESC))
if (RL_NOT(line->bitset, RL_ESC))
{
if (RL_IS(line->bitset, RL_DQUOTE))
RL_UNSET(line->bitset, RL_DQUOTE);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 00:40:22 by sbenning #+# #+# */
/* Updated: 2016/12/09 02:18:11 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:05:51 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -14,7 +14,7 @@
int rl_esc_function(t_line *line, long int input)
{
if (!RL_IS(line->bitset, RL_ESC))
if (RL_NOT(line->bitset, RL_ESC))
RL_SET(line->bitset, RL_ESC);
return (rl_default_function(line, input));
}

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/08 19:03:22 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:02:00 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:06:41 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -16,7 +16,7 @@ int rl_nl_function(t_line *line, long int input)
{
if (RL_IS(line->bitset, RL_SELECT))
RL_UNSET(line->bitset, RL_SELECT);
if (!RL_IS(line->bitset, RL_QUOTING))
if (RL_NOT(line->bitset, RL_QUOTING))
RL_SET(line->bitset, RL_FINISH);
RL_SET(line->bitset, RL_STACK);
return (0);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 00:45:34 by sbenning #+# #+# */
/* Updated: 2016/12/09 02:20:20 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:05:26 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -14,7 +14,7 @@
int rl_quote_function(t_line *line, long int input)
{
if (!RL_IS(line->bitset, RL_ESC))
if (RL_NOT(line->bitset, RL_ESC))
{
if (RL_IS(line->bitset, RL_QUOTE))
RL_UNSET(line->bitset, RL_QUOTE);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 13:19:35 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:20:31 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:07:40 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -18,7 +18,7 @@ int rl_select_end_function(t_line *line, long int input)
if (line->pos == line->used)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_end_function(line, input);
RL_SET(line->bitset, RL_SELECT);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 13:18:43 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:20:31 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:07:55 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -18,7 +18,7 @@ int rl_select_home_function(t_line *line, long int input)
if (!line->pos)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_home_function(line, input);
RL_SET(line->bitset, RL_SELECT);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 03:06:59 by sbenning #+# #+# */
/* Updated: 2016/12/09 12:37:28 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:08:10 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -18,7 +18,7 @@ int rl_select_left_function(t_line *line, long int input)
if (!line->pos)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_left_function(line, input);
RL_SET(line->bitset, RL_SELECT);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 03:16:57 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:29:15 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:08:30 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -19,7 +19,7 @@ int rl_select_pagedown_function(t_line *line, long int input)
if (line->pos == line->used)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_pagedown_function(line, input);
RL_SET(line->bitset, RL_SELECT);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 03:06:59 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:29:30 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:08:47 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -18,7 +18,7 @@ int rl_select_pageup_function(t_line *line, long int input)
if (!line->pos)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_pageup_function(line, input);
RL_SET(line->bitset, RL_SELECT);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 03:06:59 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:28:20 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:09:03 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -18,7 +18,7 @@ int rl_select_wleft_function(t_line *line, long int input)
if (!line->pos)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_wleft_function(line, input);
RL_SET(line->bitset, RL_SELECT);

View file

@ -6,7 +6,7 @@
/* By: sbenning <sbenning@student.42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2016/12/09 03:16:57 by sbenning #+# #+# */
/* Updated: 2016/12/09 13:28:37 by sbenning ### ########.fr */
/* Updated: 2016/12/10 12:09:16 by sbenning ### ########.fr */
/* */
/* ************************************************************************** */
@ -19,7 +19,7 @@ int rl_select_wright_function(t_line *line, long int input)
if (line->pos == line->used)
return (0);
if (!RL_IS(line->bitset, RL_SELECT))
if (RL_NOT(line->bitset, RL_SELECT))
line->select = line->pos;
ret = rl_wright_function(line, input);
RL_SET(line->bitset, RL_SELECT);