The R Project SVN R

Rev

Rev 10172 | Rev 36990 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 10172 Rev 21102
Line 70... Line 70...
70
	SET_TRACE(CAR(args), 0);
70
	SET_TRACE(CAR(args), 0);
71
	break;
71
	break;
72
    }
72
    }
73
    return R_NilValue;
73
    return R_NilValue;
74
}
74
}
-
 
75
 
-
 
76
 
-
 
77
/* maintain global trace state */
-
 
78
 
-
 
79
static Rboolean tracing_state = TRUE;
-
 
80
#define GET_TRACE_STATE tracing_state
-
 
81
#define SET_TRACE_STATE(value) tracing_state = value
-
 
82
 
-
 
83
SEXP R_traceOnOff(SEXP onOff) {
-
 
84
    SEXP value;
-
 
85
    Rboolean prev = GET_TRACE_STATE;
-
 
86
    if(length(onOff) > 0) {
-
 
87
        Rboolean new = asLogical(onOff);
-
 
88
        if(new == TRUE || new == FALSE)
-
 
89
            SET_TRACE_STATE(new);
-
 
90
        else
-
 
91
            error("Value for tracingState must be TRUE or FALSE");
-
 
92
    }
-
 
93
    value = allocVector(LGLSXP, 1);
-
 
94
    LOGICAL(value)[0] = prev;
-
 
95
    return value;
-
 
96
}
-
 
97
 
-
 
98
Rboolean R_current_trace_state() { return GET_TRACE_STATE; }