[−][src]Struct libslide::linter::stmt::unary_series::UnarySeriesLinter
Fields
source: &'a str
diagnostics: Vec<Diagnostic>
Implementations
impl<'a> UnarySeriesLinter<'a>
[src]
Trait Implementations
impl<'a> DiagnosticRecord for UnarySeriesLinter<'a>
[src]
The unary series lint detects trivially-reducible chains of unary operators.
For example, the following chains of unary expressions can be reduced to a more trivial form:
---1 -> -1
+++1 -> 1
+-+-+- -> -1
Chaining unary operators is not standard style in mathematical expressions and can be
misleading. For example, --x
may be interpreted to be the prefix decrement operator available
in some computer programming languages, which is absent in canonical mathematical notation.
impl<'a> LintRule<'a, StmtList> for UnarySeriesLinter<'a>
[src]
impl<'a> StmtVisitor<'a> for UnarySeriesLinter<'a>
[src]
fn visit_unary(&mut self, expr: &'a UnaryExpr<RcExpr>, start_span: Span)
[src]
fn visit_stmt_list(&mut self, stmt_list: &'a StmtList)
[src]
fn visit_stmt(&mut self, stmt: &'a Stmt)
[src]
fn visit_stmt_kind(&mut self, stmt_kind: &'a StmtKind)
[src]
fn visit_asgn(&mut self, asgn: &'a Assignment)
[src]
fn visit_asgn_op(&mut self, _asgn_op: &'a AssignmentOp)
[src]
fn visit_expr(&mut self, expr: &'a RcExpr)
[src]
fn visit_const(&mut self, _konst: &'a f64, _span: Span)
[src]
fn visit_var(&mut self, _var: &'a InternedStr, _span: Span)
[src]
fn visit_binary_op(&mut self, _op: BinaryOperator)
[src]
fn visit_binary(&mut self, expr: &'a BinaryExpr<RcExpr>, span: Span)
[src]
fn visit_unary_op(&mut self, _op: UnaryOperator)
[src]
fn visit_parend(&mut self, expr: &'a RcExpr, span: Span)
[src]
fn visit_bracketed(&mut self, expr: &'a RcExpr, span: Span)
[src]
Auto Trait Implementations
impl<'a> RefUnwindSafe for UnarySeriesLinter<'a>
impl<'a> Send for UnarySeriesLinter<'a>
impl<'a> Sync for UnarySeriesLinter<'a>
impl<'a> Unpin for UnarySeriesLinter<'a>
impl<'a> UnwindSafe for UnarySeriesLinter<'a>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,