diff --git a/doc/standard-library.txt b/doc/standard-library.txt index f13caca..bcfe3fe 100755 --- a/doc/standard-library.txt +++ b/doc/standard-library.txt @@ -1,91 +1,146 @@ -vim: tabstop=2 shiftwidth=2 expandtab ++------------------------------------------------------------------------------+ +| The Ivy Programming Language | +| ........................................ | +| Standard Library Specification | ++------------------------------------------------------------------------------+ -*** PACKAGES ****************************************************************** +version: 1.0 - ## std.lang ##### - This package contains all of the "built-in" classes, such as String, - Package, etc. +1 Introduction +============== - This package is always included by default for all Ivy source files, so - there is no need to include a `use std.lang` statement. + This document provides an overview of the packages, classes, and objects that + are included as part of the Ivy standard library - ## std.io ##### +3 std.lang +========== + + This package contains all of the "built-in" classes, such as String, + Package, etc. + + This package is always included by default for all Ivy source files, so + there is no need to include a `use std.lang` statement. + + + 3.1 Object + ---------- + + Messages: + + -is: + -implements: + -respondsTo: + -doesNotUnderstand(selector:args:) + -sendMsg(selector:args:) + -toString + + + 3.2 Int + ------- + + Messages: + + +parse: + -to: + -to:step: + -to:step:do: + + + 3.3 String + ---------- + + Messages: + + -size + -uppercase + -lowercase + -append: + -prepend: + -at:insert: + -contains: + -iterator + + + 3.4 Bool + -------- + + Messages: + + -if: + -if:else: + + + 3.5 Package + ----------- + + Messages: + + -size + -exists: + -put:at: + -get: + -map: + -select: + -select:collect: + -iterator + + + 3.6 Iterator + ------------ + + Messages: + + -value + -moveNext + -select: + -select:collect: + -iterator + + + 3.7 Lambda + ---------- + + Messages: + + -argCount + -call + -call: + -call(_:_:) + -call(_:_:_:) + -call(_:_:_:_:) + -call(args:) + -on:do: + -if: + -unless: + + + 3.8 Selector + ------------ + + Messages: + + +parse: + + + 3.9 Error + --------- + + Messages: + + -msg + -data + -withMsg:andData: + + +4 std.io +======== + This package includes classes for performing IO operations, including reading/writing to the terminals, files, etc. This package also includes the cin, cout, and cerr objects that point to standard in, standard out, and standard error respectively. - -*** CLASSES ******************************************************************* -//// std.lang //// - - ## Object ##### - -is: - -implements: - -respondsTo: - -doesNotUnderstand(selector:args:) - -sendMsg(selector:args:) - -toString - - ## Int ##### - +parse: - -to: - -to:step: - -to:step:do: - - ## Enum ##### - ** - - ## String ##### - -size - -uppercase - -lowercase - -append: - -prepend: - -at:insert: - -contains: - -iterator - - ## Bool ##### - -if: - -if:else: - - ## Package ##### - -size - -exists: - -put:at: - -get: - -map: - -select: - -select:collect: - -iterator - - ## Iterator ##### - -value - -moveNext - -select: - -select:collect: - -iterator - - ## Lambda ##### - -argCount - -call - -call: - -call(_:_:) - -call(_:_:_:) - -call(_:_:_:_:) - -call(args:) - -on:do: - -if: - -unless: - - ## Selector ##### - +parse: - - ## Error ##### - -msg - -data - -withMsg:andData: +vim: shiftwidth=3 expandtab