class LDAP::Request::FilterParser

Defined in:

ldap/request/filter_parser.cr

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.new(ldap_filter : String) #

[View source]

Class Method Detail

def self.parse(filter : String) #

[View source]

Instance Method Detail

def filter : Filter #

[View source]
def merge_branches(op, scanner) #

Join ("&") and intersect ("|") operations are presented in branches. That is, the expression (&(test1)(test2) has two branches: test1 and test2. Each of these is parsed separately and then pushed into a branch array for filter merging using the parent operation.

This method calls #parse_branches to generate the branch list and then merges them into a single Filter tree by calling the provided operation.


[View source]
def parse(scanner) #

Parsing tries to parse a standalone expression first. If that fails, it tries to parse a parenthesized expression.


[View source]
def parse_branches(scanner) #

This method parses the branch text out into an array of filter objects.


[View source]
def parse_filter_branch(scanner) #

This parses a given expression inside of parentheses.


[View source]
def parse_paren_expression(scanner) #

[View source]