Skip to content
jreidinger edited this page Feb 7, 2013 · 3 revisions

Purpose

Builtins is used only to allow smooth translation from ycp to ruby with respect to almost all corner cases. For new code it should not be used and use ruby core library for manipulation with objects.

Status

Note: All builtins with block must follow this rule: break must be translated to YCP::Break exception and return value to next value.

WFM Builtins **Note:** Investigate if it is needed, as it should be inter-component call.
Status Function notes
**DONE** Args
**DONE** ClientExists
**DONE** Execute
**DONE** GetEncoding
**DONE** GetEnvironmentEncoding
**DONE** GetLanguage
**DONE** Read
**DONE** SCRClose
**DONE** SCRGetDefault
**DONE** SCRGetName
**DONE** SCROpen
**DONE** SCRSetDefault
**DONE** SetLanguage
**DONE** Write
**DONE** call
YCP Byteblock Builtins
TODO size
TODO tobyteblock ( looks like not much used )
YCP Float Builtins
**DONE** float::abs
**DONE** float::ceil
**DONE** float::floor
**DONE** float::pow
TODO float::tolstring ( probably need to implemenent in C )
**DONE** float::trunc
**DONE** tofloat
**DONE** tostring
YCP Integer Builtins
**DONE** tointeger
YCP List Builtins
**DONE** add
**DONE** change
**DONE** contains
**DONE** filter
**DONE** find
**DONE** flatten
**DONE** foreach
**DONE** isempty
**DONE** list::reduce
**DONE** list::swap
**DONE** listmap
TODO lsort
**DONE** maplist
**DONE** merge
**DONE** prepend
**DONE** remove
**DONE** select
**DONE** setcontains
**DONE** size
**DONE** sort
**DONE** splitstring
**DONE** sublist
**DONE** tolist
**DONE** toset
**DONE** union
Map Builtins
**DONE** add
**DONE** change
**DONE** filter
**DONE** foreach
**DONE** haskey
**DONE** isempty
PARTIALLY lookup ( do not handle nil map )
**DONE** maplist
**DONE** mapmap
**DONE** remove
**DONE** size
**DONE** tomap
**DONE** union
Miscellaneous YCP Builtins
TODO eval
**DONE** getenv
TODO is ( need to decide if we translate types or not )
**DONE** random
**DONE** setenv
**DONE** sformat
**DONE** sleep
PARTIALLY srandom ( version without seed do not return used seed, but looks like noone use it )
**DONE** time
**DONE** y2debug
**DONE** y2error
**DONE** y2internal
**DONE** y2milestone
**DONE** y2security
TODO y2useritem
TODO y2usernote
**DONE** y2warning
YCP Path Builtins
**DONE** add
**DONE** size
**DONE** topath
YCP String Builtins
TODO crypt
TODO cryptbigcrypt
TODO cryptblowfish
TODO cryptmd5
TODO deletechars
TODO dgettext
TODO dngettext
TODO dpgettext
TODO filterchars
**DONE** find
TODO findfirstnotof
TODO findfirstof
TODO findlastnotof
TODO findlastof
**DONE** isempty
**DONE** issubstring
TODO lsubstring
TODO mergestring
PARTIALLY regexpmatch ( invalid regex is not handled, does ycp checks it? )
TODO regexppos
PARTIALLY regexpsub ( invalid regex is not handled, does ycp checks it? )
**DONE** regexptokenize
**DONE** search
**DONE** size
**DONE** substring
TODO timestring
TODO toascii
TODO tohexstring
**DONE** tolower
**DONE** tostring
**DONE** toupper
YCP Term Builtins
**DONE** add
**DONE** argsof
**DONE** remove
**DONE** select
**DONE** size
**DONE** symbolof
**DONE** toterm
****
Clone this wiki locally