Skip to main content

Rule

Enum Rule 

Source
pub enum Rule {
Show 380 variants EOI, WHITESPACE, COMMENT, start, block, _TERMINATOR, statement, concept, parameter_default, parameter_declaration, concept_declaration, concept_property_declaration, concept_derivation, concept_nullable_modifier, inline_property, inline_property_list, properties_declaration, prop_ident_list, prop_ident, prop_ident_wildcard, datasource, DATASOURCE_ROOT, DATASOURCE_PARTIAL, whole_grain_clause, grain_clause, address, query, file_path_list, file_const_ref, file, STATE, datasource_status_clause, DATASOURCE_STATUS, DATASOURCE_UPDATE_TRIGGER, DURATION_UNIT, datasource_lag_clause, datasource_update_trigger_clause, datasource_refresh_clause, datasource_partition_clause, concept_assignment, column_assignment, RAW_ENTRY, raw_column_assignment, column_assignment_list, column_list, import_statement, selective_import_statement, self_import_statement, import_concepts, dotted_identifier_tail, IMPORT_DOT, SELF_IMPORT, persist_statement, PERSIST_MODE, persist_partition_clause, auto_persist, full_persist, from_clause, select_statement, join_clause, join_group, multi_select_statement, align_item, align_clause, derive_item, derive_clause, merge_statement, rawsql_statement, VALIDATE_SCOPE, validate_statement, natural_select_statement, validate_query_option, validate_query_config, mock_statement, PUBLISH_ACTION, publish_statement, create_modifier_clause, CREATE_IF_NOT_EXISTS, CREATE_OR_REPLACE, CREATE_WITH_DATA, create_statement, COPY_TYPE, copy_option, copy_options, copy_statement, CHART_TYPE, CHART_PLACE_TYPE, CHART_BOOL_FIELD, CHART_SCALE_FIELD, SCALE_TYPE, chart_bool_setting, chart_scale_setting, chart_layer_binding, chart_layer_body, chart_layer, chart_place, chart_component, chart_statement, function, function_binding_type, function_binding_default, function_binding_item, function_binding_list, _DEF_TABLE, raw_function, table_function, type_drop_clause, type_declaration, rowset_derivation_statement, show_category, CONCEPTS, DATASOURCES, show_statement, select_hide_modifier, select_partial_modifier, select_item, select_list, select_transform, metadata, limit, INT_DIGITS, order_by, order_list, ORDER_IDENTIFIER, ORDER_DIRECTION_LA, _order_atom, ORDERING_DIRECTION, NULLS_SORT, ordering, where, having, conditional, _and_conditional, _condition_unit, condition_parenthetical, condition_parenthetical_not, _EXPR_CONTINUATION, BETWEEN_LA, KW_END, LOGICAL_OR, LOGICAL_AND, CONDITION_NOT, expr, comparison, between_comparison, sum_operator, UNARY_MINUS, product_operator, access_chain, _access_tail, dot_tail, bracket_tail, dcolon_tail, attr_access_paren, _atom, ATTR_NAME, parenthetical, expr_tuple, scalar_subquery, COMPARISON_OPERATOR, PLUS_OR_MINUS, MULTIPLY_DIVIDE_PERCENT, _UNNEST, unnest, _SUBSELECT, subselect_where, subselect_order, subselect_limit, subselect, _UNION, union, _EXCEPT_TVF, _INTERSECT_TVF, tvf_output_item, tvf_output, tvf_rel_arg, _tvf_arg, tvf_union_invocation, tvf_except_invocation, tvf_intersect_invocation, _tvf_invocation, tvf_select_statement, aggregate_all, grouping_set, aggregate_paren_by, GROUPING_LEAD, aggregate_over, select_rollup, select_cube, select_grouping_sets, select_grouping, GROUP_TARGET, aggregate_by, count, count_distinct, grouping, grouping_id, sum, avg, stddev, variance, max, min, array_agg, bool_and, bool_or, any, aggregate_functions, fgroup, FILTER_KW, filter_item, WINDOW_TYPE_LEGACY, WINDOW_TYPE_SQL_NUMBERING, WINDOW_TYPE_SQL_NAVIGATION, window_item_over, window_item_order, window_sql_partition, window_sql_order, _WINDOW_OVER_PAREN, window_sql_over, WINDOW_LEGACY_KW, window_item_legacy, window_item_sql_numbering, window_item_sql_navigation, window_item_sql_aggregate, window_item, OVER_COMPONENT_REF, over_component, over_list, expr_over_list, fcast, concat, concat_ws, fgrain, fcoalesce, fgreatest, fleast, fcase_when, fcase_else, fcase_simple_when, fcase_simple, fcase, len, fnot, fbool, fnullif, frecurse_edge, _generic_functions, CURRENT_DATE, CURRENT_DATETIME, CURRENT_TIMESTAMP, fcurrent_date, fcurrent_datetime, fcurrent_timestamp, _constant_functions, like, ilike, upper, flower, fsplit, fstrpos, fcontains, ftrim, fltrim, frtrim, freplace, fsubstring, fregexp_extract, fregexp_contains, fregexp_replace, HASH_TYPE, fhash, fhex, _string_functions, fadd, fsub, fmul, fdiv, fmod, flog, fround, ffloor, fceil, fabs, fsqrt, frandom, _math_functions, farray_sum, farray_distinct, farray_to_string, farray_sort, transform_lambda, farray_transform, farray_filter, fgenerate_array, _array_functions, fmap_keys, fmap_values, _map_functions, fgeo_from_text, fgeo_point, fgeo_distance, fgeo_x, fgeo_y, fgeo_centroid, fgeo_transform, _geo_functions, fdate, fdatetime, ftimestamp, fsecond, fminute, fhour, fday, fday_name, fday_of_week, fweek, fmonth, fmonth_name, fformat_time, fparse_time, fquarter, fyear, DATE_PART, fdate_trunc, fdate_part, fdate_add, fdate_sub, fdate_diff, fdate_spine, _date_functions, _static_functions, custom_function, concept_lit, INT_LITERAL_PART, FLOAT_LITERAL_PART, int_lit, float_lit, BOOL_KW, bool_lit, null_lit, array_lit, tuple_lit, map_lit, struct_lit, literal, MULTILINE_STRING, DOUBLE_STRING_CHARS, SINGLE_STRING_CHARS, string_lit, IDENTIFIER, WILDCARD_IDENTIFIER, QUOTED_IDENTIFIER, QUOTED_ADDRESS, F_QUOTED_ADDRESS, ADDRESS, RESERVED_KW, ORDER_BY_LA, SELECT_LIST_STOP, FILE_EXT, FILE_PATH, F_FILE_PATH, SHORTHAND_MODIFIER, JOIN_TYPE, PURPOSE, PROPERTY, UNIQUE, AUTO, numeric_type, map_type, struct_component, struct_type, list_type, enum_type, RANGE_SEP, range_spec, VALIDATED_TYPE_BASE, validated_type, data_type, DATA_TYPE_SIMPLE,
}

Variants§

§

EOI

End-of-input

§

WHITESPACE

§

COMMENT

§

start

§

block

§

_TERMINATOR

§

statement

§

concept

§

parameter_default

§

parameter_declaration

§

concept_declaration

§

concept_property_declaration

§

concept_derivation

§

concept_nullable_modifier

§

inline_property

§

inline_property_list

§

properties_declaration

§

prop_ident_list

§

prop_ident

§

prop_ident_wildcard

§

datasource

§

DATASOURCE_ROOT

§

DATASOURCE_PARTIAL

§

whole_grain_clause

§

grain_clause

§

address

§

query

§

file_path_list

§

file_const_ref

§

file

§

STATE

§

datasource_status_clause

§

DATASOURCE_STATUS

§

DATASOURCE_UPDATE_TRIGGER

§

DURATION_UNIT

§

datasource_lag_clause

§

datasource_update_trigger_clause

§

datasource_refresh_clause

§

datasource_partition_clause

§

concept_assignment

§

column_assignment

§

RAW_ENTRY

§

raw_column_assignment

§

column_assignment_list

§

column_list

§

import_statement

§

selective_import_statement

§

self_import_statement

§

import_concepts

§

dotted_identifier_tail

§

IMPORT_DOT

§

SELF_IMPORT

§

persist_statement

§

PERSIST_MODE

§

persist_partition_clause

§

auto_persist

§

full_persist

§

from_clause

§

select_statement

§

join_clause

§

join_group

§

multi_select_statement

§

align_item

§

align_clause

§

derive_item

§

derive_clause

§

merge_statement

§

rawsql_statement

§

VALIDATE_SCOPE

§

validate_statement

§

natural_select_statement

§

validate_query_option

§

validate_query_config

§

mock_statement

§

PUBLISH_ACTION

§

publish_statement

§

create_modifier_clause

§

CREATE_IF_NOT_EXISTS

§

CREATE_OR_REPLACE

§

CREATE_WITH_DATA

§

create_statement

§

COPY_TYPE

§

copy_option

§

copy_options

§

copy_statement

§

CHART_TYPE

§

CHART_PLACE_TYPE

§

CHART_BOOL_FIELD

§

CHART_SCALE_FIELD

§

SCALE_TYPE

§

chart_bool_setting

§

chart_scale_setting

§

chart_layer_binding

§

chart_layer_body

§

chart_layer

§

chart_place

§

chart_component

§

chart_statement

§

function

§

function_binding_type

§

function_binding_default

§

function_binding_item

§

function_binding_list

§

_DEF_TABLE

§

raw_function

§

table_function

§

type_drop_clause

§

type_declaration

§

rowset_derivation_statement

§

show_category

§

CONCEPTS

§

DATASOURCES

§

show_statement

§

select_hide_modifier

§

select_partial_modifier

§

select_item

§

select_list

§

select_transform

§

metadata

§

limit

§

INT_DIGITS

§

order_by

§

order_list

§

ORDER_IDENTIFIER

§

ORDER_DIRECTION_LA

§

_order_atom

§

ORDERING_DIRECTION

§

NULLS_SORT

§

ordering

§

where

§

having

§

conditional

§

_and_conditional

§

_condition_unit

§

condition_parenthetical

§

condition_parenthetical_not

§

_EXPR_CONTINUATION

§

BETWEEN_LA

§

KW_END

§

LOGICAL_OR

§

LOGICAL_AND

§

CONDITION_NOT

§

expr

§

comparison

§

between_comparison

§

sum_operator

§

UNARY_MINUS

§

product_operator

§

access_chain

§

_access_tail

§

dot_tail

§

bracket_tail

§

dcolon_tail

§

attr_access_paren

§

_atom

§

ATTR_NAME

§

parenthetical

§

expr_tuple

§

scalar_subquery

§

COMPARISON_OPERATOR

§

PLUS_OR_MINUS

§

MULTIPLY_DIVIDE_PERCENT

§

_UNNEST

§

unnest

§

_SUBSELECT

§

subselect_where

§

subselect_order

§

subselect_limit

§

subselect

§

_UNION

§

union

§

_EXCEPT_TVF

§

_INTERSECT_TVF

§

tvf_output_item

§

tvf_output

§

tvf_rel_arg

§

_tvf_arg

§

tvf_union_invocation

§

tvf_except_invocation

§

tvf_intersect_invocation

§

_tvf_invocation

§

tvf_select_statement

§

aggregate_all

§

grouping_set

§

aggregate_paren_by

§

GROUPING_LEAD

§

aggregate_over

§

select_rollup

§

select_cube

§

select_grouping_sets

§

select_grouping

§

GROUP_TARGET

§

aggregate_by

§

count

§

count_distinct

§

grouping

§

grouping_id

§

sum

§

avg

§

stddev

§

variance

§

max

§

min

§

array_agg

§

bool_and

§

bool_or

§

any

§

aggregate_functions

§

fgroup

§

FILTER_KW

§

filter_item

§

WINDOW_TYPE_LEGACY

§

WINDOW_TYPE_SQL_NUMBERING

§

WINDOW_TYPE_SQL_NAVIGATION

§

window_item_over

§

window_item_order

§

window_sql_partition

§

window_sql_order

§

_WINDOW_OVER_PAREN

§

window_sql_over

§

WINDOW_LEGACY_KW

§

window_item_legacy

§

window_item_sql_numbering

§

window_item_sql_navigation

§

window_item_sql_aggregate

§

window_item

§

OVER_COMPONENT_REF

§

over_component

§

over_list

§

expr_over_list

§

fcast

§

concat

§

concat_ws

§

fgrain

§

fcoalesce

§

fgreatest

§

fleast

§

fcase_when

§

fcase_else

§

fcase_simple_when

§

fcase_simple

§

fcase

§

len

§

fnot

§

fbool

§

fnullif

§

frecurse_edge

§

_generic_functions

§

CURRENT_DATE

§

CURRENT_DATETIME

§

CURRENT_TIMESTAMP

§

fcurrent_date

§

fcurrent_datetime

§

fcurrent_timestamp

§

_constant_functions

§

like

§

ilike

§

upper

§

flower

§

fsplit

§

fstrpos

§

fcontains

§

ftrim

§

fltrim

§

frtrim

§

freplace

§

fsubstring

§

fregexp_extract

§

fregexp_contains

§

fregexp_replace

§

HASH_TYPE

§

fhash

§

fhex

§

_string_functions

§

fadd

§

fsub

§

fmul

§

fdiv

§

fmod

§

flog

§

fround

§

ffloor

§

fceil

§

fabs

§

fsqrt

§

frandom

§

_math_functions

§

farray_sum

§

farray_distinct

§

farray_to_string

§

farray_sort

§

transform_lambda

§

farray_transform

§

farray_filter

§

fgenerate_array

§

_array_functions

§

fmap_keys

§

fmap_values

§

_map_functions

§

fgeo_from_text

§

fgeo_point

§

fgeo_distance

§

fgeo_x

§

fgeo_y

§

fgeo_centroid

§

fgeo_transform

§

_geo_functions

§

fdate

§

fdatetime

§

ftimestamp

§

fsecond

§

fminute

§

fhour

§

fday

§

fday_name

§

fday_of_week

§

fweek

§

fmonth

§

fmonth_name

§

fformat_time

§

fparse_time

§

fquarter

§

fyear

§

DATE_PART

§

fdate_trunc

§

fdate_part

§

fdate_add

§

fdate_sub

§

fdate_diff

§

fdate_spine

§

_date_functions

§

_static_functions

§

custom_function

§

concept_lit

§

INT_LITERAL_PART

§

FLOAT_LITERAL_PART

§

int_lit

§

float_lit

§

BOOL_KW

§

bool_lit

§

null_lit

§

array_lit

§

tuple_lit

§

map_lit

§

struct_lit

§

literal

§

MULTILINE_STRING

§

DOUBLE_STRING_CHARS

§

SINGLE_STRING_CHARS

§

string_lit

§

IDENTIFIER

§

WILDCARD_IDENTIFIER

§

QUOTED_IDENTIFIER

§

QUOTED_ADDRESS

§

F_QUOTED_ADDRESS

§

ADDRESS

§

RESERVED_KW

§

ORDER_BY_LA

§

SELECT_LIST_STOP

§

FILE_EXT

§

FILE_PATH

§

F_FILE_PATH

§

SHORTHAND_MODIFIER

§

JOIN_TYPE

§

PURPOSE

§

PROPERTY

§

UNIQUE

§

AUTO

§

numeric_type

§

map_type

§

struct_component

§

struct_type

§

list_type

§

enum_type

§

RANGE_SEP

§

range_spec

§

VALIDATED_TYPE_BASE

§

validated_type

§

data_type

§

DATA_TYPE_SIMPLE

Implementations§

Source§

impl Rule

Source

pub fn all_rules() -> &'static [Rule]

Trait Implementations§

Source§

impl Clone for Rule

Source§

fn clone(&self) -> Rule

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Copy for Rule

Source§

impl Debug for Rule

Source§

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

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

impl Eq for Rule

Source§

impl Hash for Rule

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 Ord for Rule

Source§

fn cmp(&self, other: &Rule) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 (const: unstable) · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 (const: unstable) · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl Parser<Rule> for TrilogyParser

Source§

fn parse<'i>(rule: Rule, input: &'i str) -> Result<Pairs<'i, Rule>, Error<Rule>>

Parses a &str starting from rule.
Source§

impl PartialEq for Rule

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl PartialOrd for Rule

Source§

fn partial_cmp(&self, other: &Rule) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 (const: unstable) · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 (const: unstable) · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 (const: unstable) · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 (const: unstable) · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl StructuralPartialEq for Rule

Auto Trait Implementations§

§

impl Freeze for Rule

§

impl RefUnwindSafe for Rule

§

impl Send for Rule

§

impl Sync for Rule

§

impl Unpin for Rule

§

impl UnsafeUnpin for Rule

§

impl UnwindSafe for Rule

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<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> RuleType for T
where T: Copy + Debug + Eq + Hash + Ord,

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.