You are here:
CLASSE Wiki
>
System Web
>
Category
>
DeveloperDocumentationCategory
>
PerlDoc
(24 Jun 2022,
ProjectContributor
)
Edit
Attach
Tags
PerlDoc
See
PublishedAPI
for packages intended to be used by Plugin and Contrib authors, or
browse all packages
.
See also
Developing plugins
,
Developer's Bible
,
Technical Overview
Perl Module:
Parent package:
Foswiki
Child packages
:
More ...
Less ...
Foswiki::Infix::Error
- Class of errors used with Foswiki::Infix::Parser
Foswiki::Infix::Node
- Base class for node types generated by Infix::Parser (and its subclasses). This defines the interface used to construct nodes from the parser.
Foswiki::Infix::OP
- Base class of operators recognised by the Foswiki::Infix::Parser. Predefined fields in this object used by Foswiki::Infix::Parser are: *
name
- operator string. *
prec
- operator precedence, positive non-zero integer. Larger number
> higher precedence. * =arity
- set to 1 if this operator is unary, 2 for binary. Arity 0 is legal, should you ever need it. Use arity=2 and canfold=1 for n-ary operators. *
close
- used with bracket operators.
name
should be the open bracket string, and
close
the close bracket. The existance of
close
marks this as a bracket operator. *
casematters=
- indicates that the parser should check case in the operator name (i.e. treat 'AND' and 'and' as different). By default operators are case insensitive.
Note
that operator names must be caselessly unique i.e. you can't define 'AND' and 'and' as different operators in the same parser. Does not affect the interpretation of non-operator terminals (names). *
canfold
- means that adjacent nodes with identical operators can be folded together i.e. the operands of the second node can be pushed onto the parameter list of the first. This is used (for example) for comma lists. Other fields in the object can be used for other purposes. However field names in the hash starting with
InfixParser_
are reserved for use by the parser.
Foswiki::Infix::Parser
- A simple
LL(1) parser
that parses infix expressions with nonary, unary and binary operators specified using an operator table.
Attachments
($count)
Show options
Search:
Sort by:
Name
Date
Author
Size
Type
Results per page:
6
12
24
48
all
Display hidden:
More actions
Create link(s)
Embed
Create image gallery
Download
Hide
Unhide
Move
Delete
0
attachment(s)
Select all
Clear all
E
dit
|
A
ttach
|
P
rint version
|
H
istory
: r1
|
B
acklinks
|
V
iew wiki text
|
Edit
w
iki text
|
M
ore topic actions
Topic revision: r1 - 24 Jun 2022,
ProjectContributor
System
Log In
Toolbox
Users
Groups
Index
Search
Changes
Notifications
RSS Feed
Preferences
User Reference
BeginnersStartHere
EditingShorthand
Macros
MacrosQuickReference
FormattedSearch
QuerySearch
DocumentGraphics
SkinBrowser
InstalledPlugins
Admin Maintenance
Reference Manual
AdminToolsCategory
InterWikis
ManagingWebs
SiteTools
DefaultPreferences
WebPreferences
Categories
AdminDocumentationCategory
AdminToolsCategory
DeveloperDocumentationCategory
UserDocumentationCategory
UserToolsCategory
Webs
ACC
ACL
Bunch
Private
BusinessOffice
CBB
NSF
CBETA
CESR
Private
CHESS
FMB
Maia
XIMG
CHEXS
CLASSE
Inventory
Communications
CLEO
AC
Administration
RunMan
SW
CMSPhase2MREFC
Computing
Blogs
Newsletter
Obsolete
Private
Cosmology
Private
DarkPhoton
ERL
Private
EngineeringDesignDrafting
G2
HEP
DBSWorkshop
SWIG
HLLHCCMSMREFC
HMF
HumanResources
Private
ILC
Americas
CesrTA
Proposal
DampingRings
AreaLeaders
CTA09
ILCDR06
ILCDR07_KEK
ILCDR08
S3TaskForce
Private
CesrTA
WWS
MacCHESS
Main
People
PhotocathodeBrightBeams
REU
Private
SRF
PCsrfcn1
Safety
Handbook
Private
ExternalResources
Sandbox
TestWeb
Testauth
System
Theory
Communications
Documents
Phase2MREFC
WebDev
Private
XLEAP
Copyright © by the contributing authors. All material on this site is the property of the contributing authors.
Ideas, requests, problems regarding CLASSE Wiki?
Send feedback