Skip to main content

PrologElementType

Enum PrologElementType 

Source
pub enum PrologElementType {
Show 58 variants Whitespace, Newline, Comment, Atom, Integer, Float, String, Variable, Unify, NotUnify, Equal, NotEqual, ArithEqual, ArithNotEqual, Less, Greater, LessEqual, GreaterEqual, Is, Plus, Minus, Multiply, Divide, IntDivide, Modulo, Power, BitwiseAnd, BitwiseOr, BitwiseXor, BitwiseNot, LeftShift, RightShift, LeftParen, RightParen, LeftBracket, RightBracket, LeftBrace, RightBrace, Comma, Dot, Pipe, Semicolon, Cut, Question, Colon, ColonMinus, QuestionMinus, Functor, Clause, Rule, Fact, Query, Directive, List, Structure, Root, Error, Eof,
}
Expand description

Prolog element types.

Variants§

§

Whitespace

Whitespace.

§

Newline

Newline.

§

Comment

Comment.

§

Atom

Atom.

§

Integer

Integer.

§

Float

Float.

§

String

String.

§

Variable

Variable.

§

Unify

Unify =.

§

NotUnify

Not unify \=.

§

Equal

Equal ==.

§

NotEqual

Not equal \==.

§

ArithEqual

Arithmetic equal =:=.

§

ArithNotEqual

Arithmetic not equal =\=.

§

Less

Less than <.

§

Greater

Greater than >.

§

LessEqual

Less than or equal =<.

§

GreaterEqual

Greater than or equal >=.

§

Is

Is is.

§

Plus

Plus +.

§

Minus

Minus -.

§

Multiply

Multiply *.

§

Divide

Divide /.

§

IntDivide

Integer divide //.

§

Modulo

Modulo mod.

§

Power

Power **.

§

BitwiseAnd

Bitwise AND /\.

§

BitwiseOr

Bitwise OR \/.

§

BitwiseXor

Bitwise XOR xor.

§

BitwiseNot

Bitwise NOT \.

§

LeftShift

Left shift <<.

§

RightShift

Right shift >>.

§

LeftParen

Left parenthesis (.

§

RightParen

Right parenthesis ).

§

LeftBracket

Left bracket [.

§

RightBracket

Right bracket ].

§

LeftBrace

Left brace {.

§

RightBrace

Right brace }.

§

Comma

Comma ,.

§

Dot

Dot ..

§

Pipe

Pipe |.

§

Semicolon

Semicolon ;.

§

Cut

Cut !.

§

Question

Question mark ?.

§

Colon

Colon :.

§

ColonMinus

Colon minus :-.

§

QuestionMinus

Question minus ?-.

§

Functor

Functor.

§

Clause

Clause.

§

Rule

Rule.

§

Fact

Fact.

§

Query

Query.

§

Directive

Directive.

§

List

List.

§

Structure

Structure.

§

Root

Root.

§

Error

Error.

§

Eof

End of file.

Implementations§

Source§

impl PrologElementType

Source

pub fn is_token(&self) -> bool

Checks if this type is a token.

Source

pub fn is_element(&self) -> bool

Checks if this type is a structural element.

Trait Implementations§

Source§

impl Clone for PrologElementType

Source§

fn clone(&self) -> PrologElementType

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PrologElementType

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for PrologElementType

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl ElementType for PrologElementType

Source§

type Role = UniversalElementRole

The associated role type for this element kind.
Source§

fn role(&self) -> Self::Role

Returns the general syntactic role of this element. Read more
Source§

fn is_role(&self, role: Self::Role) -> bool

Returns true if this element matches the specified language-specific role.
Source§

fn is_universal(&self, role: UniversalElementRole) -> bool

Returns true if this element matches the specified universal role.
Source§

fn is_root(&self) -> bool

Returns true if this element represents the root of the parsed tree.
Source§

fn is_error(&self) -> bool

Returns true if this element represents an error condition.
Source§

impl From<PrologTokenType> for PrologElementType

Source§

fn from(token: PrologTokenType) -> Self

Converts to this type from the input type.
Source§

impl Hash for PrologElementType

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for PrologElementType

Source§

fn eq(&self, other: &PrologElementType) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for PrologElementType

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Copy for PrologElementType

Source§

impl Eq for PrologElementType

Source§

impl StructuralPartialEq for PrologElementType

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,