Latest 0.9.29
Homepage https://github.com/arkadeleon/FunctionalObjectiveC
License MIT
Platforms ios 8.0
Frameworks Foundation
Authors

CI Status
Version
License
Platform

Example

NSArray *numbers = @[@1, @2, @3, @4];
NSNumber *sum = F.reduce [F.add] [@0] [numbers];
XCTAssertEqualObjects(sum, @10);

Requirements

Installation

FunctionalObjectiveC is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod 'FunctionalObjectiveC'

Checklist

Constant

  • [ ] always
  • [ ] true
  • [ ] false

Arithmatic

  • [x] add
  • [x] subtract
  • [x] multiply
  • [x] divide
  • [x] modulo
  • [x] negate
  • [x] inc
  • [x] dec

Mathematics

  • [ ] acos
  • [ ] asin
  • [ ] atan
  • [ ] atan2
  • [ ] cos
  • [ ] sin
  • [ ] tan
  • [ ] acosh
  • [ ] asinh
  • [ ] atanh
  • [ ] cosh
  • [ ] sinh
  • [ ] tanh
  • [ ] exp
  • [ ] exp2
  • [ ] expm1
  • [ ] log
  • [ ] log10
  • [ ] log2
  • [ ] log1p
  • [ ] logb
  • [ ] modf
  • [ ] ldexp
  • [ ] frexp
  • [ ] ilogb
  • [ ] scalbn
  • [x] fabs
  • [ ] cbrt
  • [ ] hypot
  • [x] pow
  • [x] sqrt
  • [ ] erf
  • [ ] erfc
  • [ ] lgamma
  • [ ] tagmma
  • [x] ceil
  • [x] floor
  • [ ] nearbyint
  • [ ] rint
  • [ ] lrint
  • [ ] round
  • [ ] lround
  • [ ] llrint
  • [ ] llround
  • [ ] trunc
  • [ ] fmod
  • [ ] remainder
  • [ ] remquo
  • [ ] copysign
  • [ ] nan
  • [ ] nextafter
  • [ ] nexttoward
  • [ ] fdim
  • [x] fmax
  • [x] fmin
  • [ ] fma

Comparison

  • [x] eq
  • [x] neq
  • [x] gt
  • [x] gte
  • [x] lt
  • [x] lte
  • [x] max
  • [x] min

Logical

  • [x] not
  • [ ] none
  • [x] complement
  • [x] and
  • [x] both
  • [ ] all
  • [x] allPass
  • [x] or
  • [x] either
  • [ ] any
  • [x] anyPass

Character

  • [ ] isControl
  • [ ] isSpace
  • [ ] isLower
  • [ ] isUpper
  • [ ] isAlpha
  • [ ] isAlphaNum
  • [ ] isPrint
  • [ ] isDigit
  • [ ] isOctDigit
  • [ ] isHexDigit
  • [ ] isLetter
  • [ ] isMark
  • [ ] isNumber
  • [ ] isPunctuation
  • [ ] isSymbol
  • [ ] isSeparator
  • [ ] isAscii
  • [ ] isLatin1
  • [ ] isAsciiUpper
  • [ ] isAsciiLower
  • [ ] generalCategory
  • [ ] toUpper
  • [ ] toLower
  • [ ] toTitle
  • [ ] digitToInt
  • [ ] intToDigit
  • [ ] ord
  • [ ] chr
  • [ ] showLitChar
  • [ ] lexLitChar
  • [ ] readLitChar

String

  • [ ] test
  • [ ] match
  • [ ] replace
  • [ ] trim
  • [ ] lines
  • [ ] words
  • [ ] unlines
  • [ ] unwords

Array

  • [ ] of
  • [ ] pair
  • [ ] range
  • [ ] repeat
  • [ ] times
  • [ ] aperture
  • [ ] xprod
  • [ ] transpose
  • [ ] uniq
  • [ ] uniqBy
  • [ ] uniqWith
  • [ ] unnest
  • [ ] zip
  • [ ] zipWith
  • [ ] mean
  • [ ] median
  • [ ] sum
  • [ ] product

Dictionary

  • [ ] keys
  • [ ] values
  • [ ] fromPairs
  • [ ] toPairs
  • [ ] pick
  • [ ] pickAll
  • [ ] pickBy
  • [ ] project
  • [ ] indexBy
  • [ ] groupBy
  • [ ] groupWith
  • [ ] merge
  • [ ] mergeWith
  • [ ] mergeWithKey
  • [ ] mergeAll
  • [ ] invert
  • [ ] omit

Collection

  • [ ] isEmpty
  • [x] length
  • [x] empty
  • [x] map
  • [ ] mapAccum
  • [ ] mapAccumRight
  • [x] filter
  • [ ] reject
  • [x] forEach
  • [ ] contains
  • [x] reduce
  • [ ] reduceRight
  • [ ] reduced
  • [ ] reduceBy
  • [ ] reduceWhile
  • [ ] scan
  • [ ] chain
  • [ ] flatten
  • [ ] partition
  • [ ] without

Ordered Collection

  • [x] nth
  • [x] head
  • [x] last
  • [x] slice
  • [x] init
  • [x] tail
  • [ ] insert
  • [ ] insertAll
  • [ ] intersperse
  • [ ] append
  • [ ] prepend
  • [ ] concat
  • [ ] update
  • [ ] adjust
  • [ ] remove
  • [ ] drop
  • [ ] dropWhile
  • [ ] dropLast
  • [ ] dropLastWhile
  • [ ] dropRepeats
  • [ ] dropRepeatsWith
  • [ ] take
  • [ ] takeWhile
  • [ ] takeLast
  • [ ] takeLastWhile
  • [ ] split
  • [ ] splitAt
  • [ ] splitEvery
  • [ ] splitWhen
  • [ ] join
  • [ ] indexOf
  • [ ] lastIndexOf
  • [ ] find
  • [ ] findIndex
  • [ ] findLast
  • [ ] findLastIndex
  • [ ] startsWith
  • [ ] endsWith
  • [ ] reverse

Control Flow

  • [x] when
  • [x] unless
  • [x] ifElse
  • [x] cond
  • [x] until
  • [x] defaultTo

Object

  • [ ] is
  • [ ] isNil
  • [ ] type
  • [ ] clone
  • [ ] has
  • [ ] prop
  • [ ] props
  • [ ] propIs
  • [ ] propEq
  • [ ] propOr
  • [ ] propSatisfies
  • [ ] eqProps
  • [ ] path
  • [ ] pathSatisfies
  • [ ] assoc
  • [ ] assocPath
  • [ ] dissoc
  • [ ] dissocPath

Sort

  • [ ] sort
  • [ ] sortBy
  • [ ] sortWith
  • [ ] ascend
  • [ ] descend
  • [ ] maximum
  • [ ] maximumBy
  • [ ] minimum
  • [ ] minimumBy

Lens

  • [ ] lens
  • [ ] lensProp
  • [ ] lensPath
  • [ ] lensIndex
  • [ ] view
  • [ ] set
  • [ ] over

Debug

  • [x] print

Author

Leon, [email protected]

License

FunctionalObjectiveC is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "FunctionalObjectiveC",
    "version": "0.9.29",
    "summary": "FunctionalObjectiveC is a strange functional framework.",
    "description": "A strange functional framework, inspired by ramda.js and Haskell.",
    "homepage": "https://github.com/arkadeleon/FunctionalObjectiveC",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "Leon": "[email protected]"
    },
    "source": {
        "git": "https://github.com/arkadeleon/FunctionalObjectiveC.git",
        "tag": "0.9.29"
    },
    "platforms": {
        "ios": "8.0"
    },
    "source_files": "FunctionalObjectiveC/**/*.{h,m}",
    "private_header_files": "FunctionalObjectiveC/Categories/NSString+Characters.h",
    "exclude_files": "FunctionalObjectiveC/Info.plist",
    "frameworks": "Foundation"
}

Pin It on Pinterest

Share This