/[emacs]/emacs/src/marker.c
ViewVC logotype

Diff of /emacs/src/marker.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.33 by pj, Wed Oct 31 11:06:25 2001 UTC revision 1.34 by pj, Fri Nov 2 20:30:42 2001 UTC
# Line 434  Returns nil if MARKER points into a dead Line 434  Returns nil if MARKER points into a dead
434       register Lisp_Object marker;       register Lisp_Object marker;
435  {  {
436    register Lisp_Object buf;    register Lisp_Object buf;
437    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
438    if (XMARKER (marker)->buffer)    if (XMARKER (marker)->buffer)
439      {      {
440        XSETBUFFER (buf, XMARKER (marker)->buffer);        XSETBUFFER (buf, XMARKER (marker)->buffer);
# Line 450  DEFUN ("marker-position", Fmarker_positi Line 450  DEFUN ("marker-position", Fmarker_positi
450       (marker)       (marker)
451       Lisp_Object marker;       Lisp_Object marker;
452  {  {
453    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
454    if (XMARKER (marker)->buffer)    if (XMARKER (marker)->buffer)
455      return make_number (XMARKER (marker)->charpos);      return make_number (XMARKER (marker)->charpos);
456    
# Line 470  Returns MARKER.  */) Line 470  Returns MARKER.  */)
470    register struct buffer *b;    register struct buffer *b;
471    register struct Lisp_Marker *m;    register struct Lisp_Marker *m;
472    
473    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
474    /* If position is nil or a marker that points nowhere,    /* If position is nil or a marker that points nowhere,
475       make this marker point nowhere.  */       make this marker point nowhere.  */
476    if (NILP (position)    if (NILP (position)
# Line 484  Returns MARKER.  */) Line 484  Returns MARKER.  */)
484      b = current_buffer;      b = current_buffer;
485    else    else
486      {      {
487        CHECK_BUFFER (buffer, 1);        CHECK_BUFFER (buffer);
488        b = XBUFFER (buffer);        b = XBUFFER (buffer);
489        /* If buffer is dead, set marker to point nowhere.  */        /* If buffer is dead, set marker to point nowhere.  */
490        if (EQ (b->name, Qnil))        if (EQ (b->name, Qnil))
# Line 506  Returns MARKER.  */) Line 506  Returns MARKER.  */)
506        return marker;        return marker;
507      }      }
508    
509    CHECK_NUMBER_COERCE_MARKER (position, 1);    CHECK_NUMBER_COERCE_MARKER (position);
510    
511    charno = XINT (position);    charno = XINT (position);
512    
# Line 546  set_marker_restricted (marker, pos, buff Line 546  set_marker_restricted (marker, pos, buff
546    register struct buffer *b;    register struct buffer *b;
547    register struct Lisp_Marker *m;    register struct Lisp_Marker *m;
548    
549    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
550    /* If position is nil or a marker that points nowhere,    /* If position is nil or a marker that points nowhere,
551       make this marker point nowhere.  */       make this marker point nowhere.  */
552    if (NILP (pos)    if (NILP (pos)
# Line 560  set_marker_restricted (marker, pos, buff Line 560  set_marker_restricted (marker, pos, buff
560      b = current_buffer;      b = current_buffer;
561    else    else
562      {      {
563        CHECK_BUFFER (buffer, 1);        CHECK_BUFFER (buffer);
564        b = XBUFFER (buffer);        b = XBUFFER (buffer);
565        /* If buffer is dead, set marker to point nowhere.  */        /* If buffer is dead, set marker to point nowhere.  */
566        if (EQ (b->name, Qnil))        if (EQ (b->name, Qnil))
# Line 582  set_marker_restricted (marker, pos, buff Line 582  set_marker_restricted (marker, pos, buff
582        return marker;        return marker;
583      }      }
584    
585    CHECK_NUMBER_COERCE_MARKER (pos, 1);    CHECK_NUMBER_COERCE_MARKER (pos);
586    
587    charno = XINT (pos);    charno = XINT (pos);
588    
# Line 622  set_marker_both (marker, buffer, charpos Line 622  set_marker_both (marker, buffer, charpos
622    register struct buffer *b;    register struct buffer *b;
623    register struct Lisp_Marker *m;    register struct Lisp_Marker *m;
624    
625    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
626    
627    if (NILP (buffer))    if (NILP (buffer))
628      b = current_buffer;      b = current_buffer;
629    else    else
630      {      {
631        CHECK_BUFFER (buffer, 1);        CHECK_BUFFER (buffer);
632        b = XBUFFER (buffer);        b = XBUFFER (buffer);
633        /* If buffer is dead, set marker to point nowhere.  */        /* If buffer is dead, set marker to point nowhere.  */
634        if (EQ (b->name, Qnil))        if (EQ (b->name, Qnil))
# Line 673  set_marker_restricted_both (marker, buff Line 673  set_marker_restricted_both (marker, buff
673    register struct buffer *b;    register struct buffer *b;
674    register struct Lisp_Marker *m;    register struct Lisp_Marker *m;
675    
676    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
677    
678    if (NILP (buffer))    if (NILP (buffer))
679      b = current_buffer;      b = current_buffer;
680    else    else
681      {      {
682        CHECK_BUFFER (buffer, 1);        CHECK_BUFFER (buffer);
683        b = XBUFFER (buffer);        b = XBUFFER (buffer);
684        /* If buffer is dead, set marker to point nowhere.  */        /* If buffer is dead, set marker to point nowhere.  */
685        if (EQ (b->name, Qnil))        if (EQ (b->name, Qnil))
# Line 843  nil means the marker stays before text i Line 843  nil means the marker stays before text i
843       (marker)       (marker)
844       register Lisp_Object marker;       register Lisp_Object marker;
845  {  {
846    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
847    return XMARKER (marker)->insertion_type ? Qt : Qnil;    return XMARKER (marker)->insertion_type ? Qt : Qnil;
848  }  }
849    
# Line 855  If TYPE is nil, it means the marker stay Line 855  If TYPE is nil, it means the marker stay
855       (marker, type)       (marker, type)
856       Lisp_Object marker, type;       Lisp_Object marker, type;
857  {  {
858    CHECK_MARKER (marker, 0);    CHECK_MARKER (marker);
859    
860    XMARKER (marker)->insertion_type = ! NILP (type);    XMARKER (marker)->insertion_type = ! NILP (type);
861    return type;    return type;

Legend:
Removed from v.1.33  
changed lines
  Added in v.1.34

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26