C# Класс dotless.Core.parser.TreeBuilder

Показать файл Открыть проект

Открытые методы

Метод Описание
Build ( ) : ElementBlock

Main entry point for the build

Build ( ElementBlock tail ) : ElementBlock

Main entry point for the build

TreeBuilder ( PegNode root, string src ) : System

Приватные методы

Метод Описание
Accessor ( PegNode node, ElementBlock elementBlock ) : INode

accessor: accessor_name '[' accessor_key ']';

Arguments ( PegNode node, ElementBlock element ) : IEnumerable

arguments : '(' s argument s (',' s argument s)* ')'; argument : color / number unit / string / [a-zA-Z]+ '=' dimension / function / expressions / [-a-zA-Z0-9_%$/.&=:;#+?]+ / keyword (S keyword)*;

Color ( PegNode node ) : INode

color: '#' rgb;

Cursors ( PegNode node ) : INode

cursor (s ',' s cursor)+ ;

Declaration ( PegNode node, ElementBlock elementBlock ) : void

declaration: standard_declaration / catchall_declaration ;

Entity ( PegNode node, ElementBlock elementBlock ) : INode

entity : function / fonts / accessor / keyword / variable / literal ;

Expression ( PegNode node, ElementBlock elementBlock ) : INode

expression: '(' s expressions s ')' / entity ;

Expressions ( PegNode node, ElementBlock elementBlock ) : IEnumerable

expressions: operation_expressions / space_delimited_expressions / [-a-zA-Z0-9_%*/.&=:,#+? \[\]()]+ ;

Fonts ( PegNode node ) : INode

fonts : font (s ',' s font)+ ;

Function ( PegNode node, ElementBlock element ) : INode

function: function_name arguments ;

GetMixinArguments ( PegNode arguments, ElementBlock block ) : IEnumerable
GetMixinChildren ( ElementBlock newParentBlock, ElementBlock mixinRule, ElementBlock mixinBlock ) : IEnumerable
Import ( PegNode node, ElementBlock elementBlock ) : IEnumerable

import : ws '@import' S import_url medias? s ';' ;

Insert ( PegNode node, ElementBlock elementBlock ) : IEnumerable
Keyword ( PegNode node ) : INode

keyword: [-a-zA-Z]+ !ns;

Mixin ( PegNode node, ElementBlock elementBlock ) : void

TODO: Added quick fix for multipule mixins, but need to add mixins with variables which will changes things a bit

Number ( PegNode node ) : INode

number: '-'? [0-9]* '.' [0-9]+ / '-'? [0-9]+;

OperationExpressions ( PegNode node, ElementBlock elementBlock ) : IEnumerable

operation_expressions: expression (operator expression)+;

Primary ( PegNode node ) : ElementBlock
Primary ( PegNode node, ElementBlock elementBlock ) : ElementBlock

primary: (import / declaration / ruleset / comment)* ;

RGB ( PegNode node ) : INode

rgb:(rgb_node)(rgb_node)(rgb_node) / hex hex hex ;

RuleSet ( PegNode node, ElementBlock elementBlock ) : void

ruleset: selectors [{] ws prsimary ws [}] ws / ws selectors ';' ws;

Selector ( PegNode node ) : IEnumerable

selector : (s select element s)+ arguments? ;

Selectors ( PegNode node, Func action ) : IEnumerable

selectors : ws selector (s ',' ws selector)* ws ;

SpaceDelimitedExpressions ( PegNode node, ElementBlock elementBlock ) : IEnumerable

space_delimited_expressions: expression (WS expression)* important? ;

StandardSelectors ( ElementBlock elementBlock, IEnumerable els ) : IEnumerable

standard_ruleset: ws selectors [{] ws primary ws [}] ws;

Variable ( PegNode node ) : INode

variable: '@' [-_a-zA-Z0-9]+;

Описание методов

Build() публичный Метод

Main entry point for the build
public Build ( ) : ElementBlock
Результат ElementBlock

Build() публичный Метод

Main entry point for the build
public Build ( ElementBlock tail ) : ElementBlock
tail ElementBlock
Результат ElementBlock

TreeBuilder() публичный Метод

public TreeBuilder ( PegNode root, string src ) : System
root Peg.Base.PegNode
src string
Результат System